繁体   English   中英

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

[英]How to update the view after routeParams changed in angular2?

我有一个设计器组件,我通过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之后,它会从数据库中获取页面并呈现视图。

现在,我在designerComponent本身内部提供了routerlink,并使用相同的方法将其重定向:

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

如果我的页面正在更改,我想更改视图。

有输入吗?

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

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

这样做解决了我的问题。

谢谢

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM