如何在angular2中更改angularParams后更新视图?

时间:2016-10-05 09:09:58

标签: angular typescript angular2-routing

我有一个设计器组件,我通过routerLink加载:

<a [routerLink]="['/designer',page._id]">
   <i class="fa fa-eye fa-fw"></i>
</a>

当我第一次重定向时,它成功获取了routeParams,即在我的DesignerComponent中:

ngOnInit(){
    this.route.params.subscribe(params => {
      if (params['id']) {
        this.page_id = params['id'];
        console.log(this.page_id);        
      }
    });
}

并且在page._id初始化之后,它从数据库&amp;获取页面。呈现视图。

现在我已经在designerComponent内部提供了routerlink&amp;我正在使用相同的方法重定向它:

我能够在控制台中看到page._id,但我的视图没有针对新的page_id进行更新。

如果我的网页发生变化,我想改变观点。

任何输入?

1 个答案:

答案 0 :(得分:0)

事实证明,我只需要在回调内更新我的pageObject。

this.route.params.subscribe(params => {
  if (params['id']) {
    this.page_id = params['id'];
    this.getRapidPageFromDb();
    console.log(this.page_id);        
  }
});

这样做解决了我的问题。

谢谢