以下のような経路のためにrouterLink
にパラメータを渡すことができることを私は知っています
/user/:id
書くことによって
[routerLink]="['/user', user.id]"
しかし、このようなルートはどうでしょうか。
/user/:id/details
このパラメータを設定する方法はありますか、それとも別のURLスキームを検討する必要がありますか?
あなたの特定の例では、あなたは以下のrouterLink
をするでしょう:
[routerLink]="['user', user.id, 'details']"
コントローラでこれを行うには、Router
を挿入して次のようにします。
router.navigate(['user', user.id, 'details']);
Angular docs リンクパラメータ配列 /のセクション ルーティングとナビゲーション
たぶんそれは本当に遅い答えです、しかしもしあなたが別のページをparamでナビゲートしたいなら、あなたはそうすることができます、
[routerLink]="['/user', user.id, 'details']"
また、ルーティング設定も忘れないでください。
[path: 'user/:id/details', component:userComponent, pathMatch: 'full']
まずテーブルで設定します。
const routes: Routes = [
{
path: 'class/:id/enrollment/:guid',
component: ClassEnrollmentComponent
}
];
今タイプスクリプトのコードで:
this.router.navigate([`class/${classId}/enrollment/${4545455}`]);
別のコンポーネントでパラメータを受け取る
this.activatedRoute.params.subscribe(params => {
let id = params['id'];
let guid = params['guid'];
console.log(`${id},${guid}`);
});