Angular 2 で特定のルートに RouteReuseStrategy shouldDetach を実装する方法
Angular 2 では、RouteReuseStrategy インターフェイスを使用して開発者がルートの動作を制御できますキャッシュと再利用。このインターフェースを実装することで、どのルートをキャッシュするか、いつ再レンダリングするかをカスタマイズできます。
「documents/:id」ルートではなく「documents」ルートを保存するという目標を達成するには、 RouteReuseStrategy クラスに shouldDetach メソッドを実装する必要があります。このメソッドは、ActivatedRouteSnapshot を入力として受け取り、将来の再利用のためにルートを保存する必要があるかどうかを示すブール値を返します。
これは、「ドキュメント」ルートのみを保存し、他のすべてのルートを破棄する shouldDetach の実装例です。
<code class="typescript">import { RouteReuseStrategy, ActivatedRouteSnapshot } from '@angular/router'; export class CustomRouteReuseStrategy implements RouteReuseStrategy { shouldDetach(route: ActivatedRouteSnapshot): boolean { return route.routeConfig?.path === 'documents'; } // Other implementation details omitted for brevity }</code>
アプリのモジュールでカスタム戦略を忘れずに指定してください:
<code class="typescript">@NgModule({ // ... providers: [ { provide: RouteReuseStrategy, useClass: CustomRouteReuseStrategy }, ], }) export class AppModule {}</code>
この戦略を設定すると、Angular はそこから移動するときに「ドキュメント」ルートをキャッシュします。戻るときは、新しいインスタンスを再作成する代わりに、キャッシュされたルート コンポーネントが使用され、より高速かつシームレスな移行が保証されます。
以上が以下に、さまざまな詳細レベルとターゲット設定に応じた、質問ベースの記事のタイトルをいくつか示します。 **一般/初心者:** * **RouteReuseStrate を使用して Angular 2 でルート キャッシュを制御する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。