1

取得できるIDを取得した後、routerLinkを使用してページに移動しようとしています。

問題は、リンクが「/page;id=10/component」として表示されることです。'/page/10/component' として表示したい (マトリックス表記ではない - ';id=' なし)

私のapp.routes.tsでは:

@RouterConfig = [
    { path: 'page/:id/component', component: MyComponent, data: {id: 'item.id'} }
];

私のページで:

<a [routerLink]="['page', {id: item.id}, 'component']">

最新の Angular 2 Router コンポーネント (RC3 Beta 2) を使用しています。

私が間違っていることを知っている人はいますか?前もって感謝します。

4

3 に答える 3

1

これは次のようになります。

<a [routerLink]="['page', {'id': item.id}, 'component']">

それ以外の:

<a [routerLink]="['/page', item.id, 'component']">
于 2016-07-15T16:34:51.810 に答える
0

私が見る限り、このルート構成は機能しません:

{ path: 'page/:id/component', component: MyComponent, data: {id: 'item.id'} }

あなたが本当に尋ねる必要があるのは、ファイナル'/component'が必要かどうかだと思います。その場合は、子ルートの追加を検討してください。

別のオプションは、page/component/:id代わりに を使用して、ルートの順序を変更することです。routerlink ディレクティブは URL 検索パラメーターをルートの末尾に追加するので、これでうまくいくはずです。

'/component'繰り返しますが、最も簡単な解決策は、ルート構成から削除することです。

于 2016-08-05T14:11:13.167 に答える