从一个组件导航到另一个组件可将参数保留在网址上

时间:2019-02-28 08:05:11

标签: angular angular2-routing

在我的应用程序中,我有员工详细信息组件,其网址看起来像http://localhost:4200/employee/123 从这里,当我单击按钮返回时,我使用了

this.router.navigate(['/'], { queryParams: { message: this.message }, relativeTo: this.activatedRoute, skipLocationChange: true });

它可以完美工作,并且页面可以导航到所需组件(员工列表)。但是,它会将员工ID 123保留在url上,该URL实际不应存在且应看起来像http://localhost:4200/employee/。我该怎么做呢?

3 个答案:

答案 0 :(得分:0)

你可以给 for key, value in d.items(): for inner_key, inner_value in value.items(): for item in inner_value: writer.writerow(key, inner_key, item) 要么 this.router.navigate(['../'], {queryParams:'' relativeTo: this.route });

答案 1 :(得分:0)

我认为问题是skipLocationChange。 documentation声明以下内容:

  

skipLocationChanges:导航时不会将新状态推入历史记录。

这正是您所遇到的想法:导航有效,但您的路线没有改变。请删除skipLocationChange。

看到这个问题here:解决方案是使用skipLocationChanges导航到localhost / canvas,而不在URL中显示“ canvas”。您要完全相反。因此,我认为使用skipLocationChanges:不需要的东西就是真。

答案 2 :(得分:0)

我通过以下链接解决了我的问题 https://angularfirebase.com/lessons/sharing-data-between-angular-components-four-methods/

它有助于使用服务在页面之间传输数据 a)父母与子女 b)子女父母 c)同父异母