Angular:更新路线数据

时间:2018-04-13 17:16:35

标签: angular angular-router

我有一个使用ngx-breadcrumbs的Angular 5应用程序。面包屑被设置为路径内的数据,如下:

{ path: 'event-template', component: EventTemplateComponent, data: { breadcrumbs: 'New Event'} }

我想稍后在组件中更新此痕迹,如下:

ngOnInit() {
  this.activatedRoute.data.subscribe((currentData) => {
    currentData['breadcrumbs'] = 'newValue';
  });
}

显然,我希望在页面加载之前更新breadcrumb的值。这样新的字符串优先。但我不知道如何做到这一点,我不认为上述方法必然是正确的。有人可以帮忙吗?

谢谢!

2 个答案:

答案 0 :(得分:1)

// in EventTemplateComponent  ngOnInit function  
this.activatedRoute.data['value']['breadcrumb'] = 'MST_Approval';
// for child component
this.activatedRoute.parent.data['value']['breadcrumb'] = 'MST_Approval';

答案 1 :(得分:0)

不是在路由参数上分配新值,而是使用router.navigate方法触发另一个路由事件会更好。您可以执行this.router.navigate('event-template', {breadcrumbs: 'New Event'})

之类的操作