Angular:更新路线数据

Angular: Update Route Data

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

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

我想稍后从组件中更新此面包屑,例如:

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

显然,我希望在页面加载之前更新面包屑的值。以便新字符串优先。但我不知道该怎么做,我认为上面的方法不一定正确。有人可以帮忙吗?

谢谢!

与其在路由参数上分配新值,不如使用 router.navigate 方法触发另一个路由事件。你可以做类似 this.router.navigate('event-template', {breadcrumbs: 'New Event'})

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