如何在angular路由之间传递一些额外的数据:
navigateToItem(item: Item) {
this.router.navigate(
['itemss', item.name],
{ state: { data: { id: item.id } } }
);
}看起来我们可以像上面的方法一样传递Navigation Extras。
但是我如何在目标路由中访问它呢?
我也在使用ngrx-router-store。(如果这也可以通过ngrx路由器存储完成,请建议也这样做,但不是必需的)
如果传递除params或queryparams之外的额外动态数据,请建议您这样做。(因为我不想在url片段中显示额外的参数,如id或任何额外的数据。)
所以我需要传递它们并像上面那样访问它们
发布于 2020-11-06 12:28:54
在路由器中公开的getCurrentNavigation函数就是您要寻找的。确保在您要导航到的组件的构造函数中调用它,否则信息将不会出现在那里。(我认为你仍然可以从历史中访问它)
首选方法是:
constructor(private router: Router) {
this.itemId= this.router.getCurrentNavigation().extras.state.data.id;
}https://stackoverflow.com/questions/64708691
复制相似问题