Angular:如何更新另一个组件的路由数据

时间:2018-03-20 15:34:13

标签: angular routes

其中一个组件通过以下路线获取其用户帐户信息:

df.set_index('date').groupby('id')['variation'].resample('A').mean()

另一个组件修改用户帐户信息,并使用router.navigate()重定向到第一个组件模板HTML,但用户信息未显示更新 - 这是肯定的,因为路由数据未更新。

如何更新第一个组件的路径数据,以便可以在其模板中更新用户信息?我知道observable可能有助于这个例子:

https://angular.io/guide/router

及其现场演示: https://stackblitz.com/angular/lnogpayllep

但是在这个示例中,数据实际上并非来自路线,而是使用可观察的英雄$并直接调用服务形式ngInit:

ngOnInit() {
    this.route.data.subscribe(data => {
        this.accountDetails = data.accountDetails;
    });
}

看起来这与我的情况有点不同。

谢谢!

1 个答案:

答案 0 :(得分:3)

您不应该将数据传递到路由器。但如果你这样做,它应该是静态的:

  

表示与特定路径关联的静态数据

(From the documentation)

如果您想在两个组件之间交换数据,我建议您use a sharing service