angular + ngrx如果组件已经初始化,如何获取数据

时间:2017-10-11 05:12:12

标签: angular redux ngrx

在我的应用程序中,我有一个在/contacts路由加载时加载的联系人列表,如果用户点击特定联系人,我加载了应该显示详细信息的子路由/contacts/view那次接触。

第一次加载/contacts/view/:id时(比如/ contacts / view / 1),ngOnInit()会被触发,会调度LoadContact操作,该操作负责从服务器获取联系人数据。但是,如果我导航到其他联系人点击列表中的其他项目(例如/ contacts / view / 2),则ngOnInit()不会被触发,而且我无法从服务器获取数据。

关于如何确保视图组件始终在任何类型的导航(首次加载和后续导航)中从服务器获取新数据的任何想法?

谢谢, 加布

1 个答案:

答案 0 :(得分:1)

您需要Activated Route用于此

  ngOnInit() {
    this.sub = this.route.params.subscribe(params => {
       this.id = +params['id'];

       // dispatch action to load the details here.
    });
  }