2017-10-18 114 views
0

我有一個切換到購物功能,它由一個標題組件控制,並顯示該場所的儀表板。如何在angular.navigate在Angular 4之後重新加載視圖?

在該標題組件中,我導航到儀表板路線,即使我已經在該路線中。

this.router.navigate(['/venues', this.currentVenue._id, 'dashboard']); 

但它不會再次觸發ngOnInit掛鉤,所以我的觀點並沒有重新加載。

這種情況下正確的解決方法是什麼?

回答

1

您是否需要重新加載視圖?或者只是重新計算一些數據?

如果你只需要reget基於路由參數數據,你可以這樣做:

ngOnInit(): void { 
    this.route.params.subscribe(
     params => { 
      const id = +params['id']; 
      this.getMovie(id); // <- Or whatever you need to do here 
     } 
    ); 
} 

在ngOnInit,該代碼訂閱了路由參數。所以,每次參數改變時,即使視圖沒有被改變/重新加載,改變也會被作爲訂閱的一部分加入,並執行相關的回調。

相關問題