web-dev-qa-db-ja.com

URLのどこかにあるパラメータをrouterLinkに渡す方法は?

以下のような経路のためにrouterLinkにパラメータを渡すことができることを私は知っています

/user/:id

書くことによって

[routerLink]="['/user', user.id]"

しかし、このようなルートはどうでしょうか。

/user/:id/details

このパラメータを設定する方法はありますか、それとも別のURLスキームを検討する必要がありますか?

148

あなたの特定の例では、あなたは以下のrouterLinkをするでしょう:

[routerLink]="['user', user.id, 'details']"

コントローラでこれを行うには、Routerを挿入して次のようにします。

router.navigate(['user', user.id, 'details']);

Angular docs リンクパラメータ配列 /のセクション ルーティングとナビゲーション

256

たぶんそれは本当に遅い答えです、しかしもしあなたが別のページをparamでナビゲートしたいなら、あなたはそうすることができます、

[routerLink]="['/user', user.id, 'details']"

また、ルーティング設定も忘れないでください。

 [path: 'user/:id/details', component:userComponent, pathMatch: 'full']
18
Rıdvan

まずテーブルで設定します。

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}`);
  });
0
Rejwanul Reja