私は:id
と:type
を受け付ける子ルートを持っています。これらは個別に動作し、割り当てられたコンポーネントをロードしますが、コンポーネントを一緒に使用する場合は一度だけロードされ、:id
または:type
が更新された場合は再びロードされません。角2 - 割り当てられたコンポーネントを2回ロードしない複数のパラメータを持つルート
例:
myapp/1
- (:id
用)>この負荷
myapp/b
- (:type
用)>この負荷
myapp/1/b
- >この負荷が、一度だけ(:id/:type
の組み合わせのために)
myapp/2/b
- >このコンポーネントを再度読み込まない(:id
が更新された場合)
すべてのルートについて、ブラウザでURLが正しく変更されているのがわかります。
子ルートクラスのコード:
export const CHILD_ROUTES: Routes = [
{ path: '', component: TitleComponent },
{ path: ':id', component: TitleComponent },
{ path: ':id/:type', component: TitleComponent } //This componment doesn't load
];
ルートを操作する/変更するために使用されるコード:
this.router.navigate(['/myapp', this.id]);
this.router.navigate(['/myapp', this.id, this.type]);
他の何かが必要な場合は私に知らせてください。
がhttp://stackoverflow.com/questions/39762485/want-to-prevent-component-recreationのDUPのような音私はこれが役立つことを願っソリューション
のこの種を試してみてください-while-routing-in-angular-2/39763254#39763254最近、カスタム再利用戦略のサポートが導入されました。リンクされた回答には、チュートリアルへのリンクが含まれています。 –