【发布时间】:2017-12-23 15:17:25
【问题描述】:
我想从一个组件导航到另一个组件以及一些数据。
代码如下:
this.router.navigate(['some-component', { name: 'Some Name' }]);
在 SomeComponent 我捕捉到这样的路由参数:
this.route.params.subscribe(params => {
//assign it to some component member, like
this.name = (JSON.parse(params))['name'];
});
这可行,但它并没有给我信心,在页面导航到 SomeComponent 视图后,url 看起来很糟糕,并且在页面重新加载后它不会保持状态。
我想避免使用路由参数。
例如,导航到 SomeComponent 并向其发送将在内部使用并绑定到 this.name 的值的正确方法是什么。
这两个组件不是子/父关系。
【问题讨论】:
-
“网址看起来很糟糕”是什么意思?网址是什么样的?
-
这是次要的事情,url 看起来不太重要。我想我正在寻找非常基本的东西。导航到组件并在其公共属性上设置一些数据。
-
如果你想在组件之间共享数据,因为共享服务是最常见的没有父子关系的场景:angular.io/guide/…你只需要使用(例如)@987654324 @ 而不是
Subject。
标签: angular typescript data-binding router