2
Angular 2ルータを使用して、深くネストされたワイルドカードルートをどのように達成しますか。すべてのワイルドカードサンプルコードは、ページが見つかりませんでした。以下のユースケースを想定します。あなたは、ファイルシステム上のフォルダビューアとして機能するプログラムを持っていました。例のルートは、次のものがありますワイルドカードネストされたルートAngular2
/home/Documents/Personal
/home/Pictures/Vacation/2015
/home/Pictures/Vacations/2015/10
をこれまでのところ、私は次のことを試してみました:
const r = [
{
path: 'home',
component: HomeComponent,
children: [
{
path: '**',
component: FolderViewerComponent
}
]
}
];
作品のこの種。私は、次のURLで、部品にアクセスすることができます。
export class FolderViewerComponent implements OnInit {
constructor(private router: Router, private route: ActivatedRoute) {
}
ngOnInit() {
console.log(this.route.url);
}
}
をしかし、私は新しいルートが同じ部品を使用するのでngOnInitが再びトリガされません同じ周りを移動するとき。したがって、私はサーバーから新しいフォルダの内容を要求する方法がありません。
だから、一日の終わりに:
- 私はこれを行うべきであるより良い方法はありますか?
- コンポーネントがない場合でも、ルートが変更されたときに私が購読することができるイベントはありませんか?
だけ –
ngOnInit(){this.route.params.forEach(paramsは:PARAMS)vaiableのURLを格納し、新しいURLと、この変数毎回とに確認ここ=> {//書き込みコードを} )} '' –