あるコンポーネントから別のコンポーネントに移動し、それに何らかのデータをナビゲートしたいと考えています。ここでコンポーネントにナビゲートしてデータをバインドします
コードです:これは動作します
this.route.params.subscribe(params => {
//assign it to some component member, like
this.name = (JSON.parse(params))['name'];
});
が、ページがナビゲートします後、それは、私に自信を与えるものではありません:SomeComponentで
this.router.navigate(['some-component', { name: 'Some Name' }]);
私はこのようなルートのparamsをキャッチしていますSomeComponentビュー、URLが悪く見え、ページの再読み込み後に状態を保持しません。
私は経路パラメータを避けたいと思います。
SomeComponentにナビゲートし、内部で使用され、this.nameにバインドされた値を送信する正しい方法は何でしょうか。
これらの2つのコンポーネントは、子/親関係にありません。
"url looks bad"とはどういう意味ですか? URLはどのように見えますか? –
これはサイドのことですが、URLの外観はそれほど重要ではありません。私はかなり基本的なものを探していると思う。コンポーネントに移動し、パブリックプロパティに関するデータを設定します。 – eomeroff
コンポーネント間でデータを共有する場合、共有サービスは親子関係が存在しない最も一般的なシナリオです:https://angular.io/guide/component-interaction#parent-and-children-communicate- via-a-service 'Subject'の代わりに(例えば)' BehaviorSubject'を使うだけです。 – Alex