1. ホーム
  2. angular

Angular 2 Routerで相対移動する(第3版)

2023-09-02 02:29:53

質問

から相対移動する方法 /questions/123/step1 から /questions/123/step2 を使用してコンポーネント内で Router を使用し、文字列の連結を行わず /questions/123/ ?

以下に自分なりの答えを追加しました。より良い回答があれば遠慮なくご提案ください。) もっといい方法があると思うのですが。

どのように解決するのですか?

さらに調べた結果、次のようなものが見つかりました。

this.router.createUrlTree(['../step2'], {relativeTo: this.activatedRoute});

this.router.navigate(['../step2'], {relativeTo: this.activatedRoute});

最初のアプローチ ( Router.createUrlTreeのAPI。 ) は私にとってはうまくいきませんでした、つまり何も起こりませんでした。2番目の方法( Router.navigate API ) は動作しました。

しかし、2番目のアプローチでは NavigationExtras (第二引数) を使いますが、これは @experimental . また次のリリースで大きな変更がないことを祈ります...そして NavigationExtras が安定することを願っています。

他の提案/アプローチは、上記の私の質問に対して答えることを躊躇しないでください。

2016-10-12更新

もう一つstackoverflowの質問もあります。

2016-10-24 更新

ドキュメンテーションです。

2019-03-08の更新

Angular7.1で変更があったようです。Angular7.1での解決方法は別記事で回答があります。を参考にしてください。 https://stackoverflow.com/a/38634440/42659 .