Skip to content

Commit 4380e68

Browse files
SkyZeroZxatscott
authored andcommitted
docs(router): update scroll restoration example
Uses modern dependency injection and signal-based change detection in the custom scroll restoration example.
1 parent a958d7f commit 4380e68

1 file changed

Lines changed: 9 additions & 9 deletions

File tree

packages/router/src/router_config.ts

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -169,20 +169,20 @@ export interface InMemoryScrollingOptions {
169169
* in the following example.
170170
*
171171
* ```ts
172-
* class AppComponent {
173-
* movieData: any;
172+
* class App {
173+
* movieData = signal<MovieData | null>(null);
174+
* private router = inject(Router);
175+
* private viewportScroller = inject(ViewportScroller);
176+
* private changeDetectorRef = inject(ChangeDetectorRef);
174177
*
175-
* constructor(private router: Router, private viewportScroller: ViewportScroller,
176-
* changeDetectorRef: ChangeDetectorRef) {
177-
* router.events.pipe(filter((event: Event): event is Scroll => event instanceof Scroll)
178+
* constructor() {
179+
* this.router.events.pipe(filter((event: Event): event is Scroll => event instanceof Scroll)
178180
* ).subscribe(e => {
179181
* fetch('http://example.com/movies.json').then(response => {
180-
* this.movieData = response.json();
181-
* // update the template with the data before restoring scroll
182-
* changeDetectorRef.detectChanges();
182+
* this.movieData.set(response.json());
183183
*
184184
* if (e.position) {
185-
* viewportScroller.scrollToPosition(e.position);
185+
* this.viewportScroller.scrollToPosition(e.position);
186186
* }
187187
* });
188188
* });

0 commit comments

Comments
 (0)