在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 問答/HTML5  HTML/ angular2跳轉(zhuǎn)路由沒有觸發(fā)ngOninit生命周期函數(shù)?

angular2跳轉(zhuǎn)路由沒有觸發(fā)ngOninit生命周期函數(shù)?

在另一個路由中是這樣跳轉(zhuǎn)的:

_this.router.navigate(['/examdetail'], { queryParams: { examid: _this.examId[dataIndex]}});

跳到examdetail這個路由的時候只觸發(fā)了constructor,ngOnInit沒有觸發(fā):

  ngOnInit() {
    console.log(222);
  }
  
當重新刷新這個頁面的時候會觸發(fā)oninit,但是我想在已進入這個路由的時候觸發(fā),該怎么做,還有就是為什么會導致觸發(fā)不到oninit這個生命周期函數(shù)?
回答
編輯回答
風畔

你肯定是在examdetail 這個同一個路由下進行跳轉(zhuǎn)

這是因為Angular在同一個頁面內(nèi)跳轉(zhuǎn)時,不會重新創(chuàng)建組件的實例。如樓上所說,可以通過監(jiān)聽ActiveRoute的params事件進行跳轉(zhuǎn)。

2018年2月8日 01:56
編輯回答
心悲涼

可以直接監(jiān)聽ActiveRoute的params事件

constructor(private _route: ActivatedRoute,) {
    this._route.params.subscribe((params: Params) => {
        //params: {examid: 你傳入的值}
    }
}

2017年11月20日 09:59
編輯回答
還吻

我也出現(xiàn)了這個問題,實例化之后路由跳轉(zhuǎn),就會這樣

2018年6月28日 04:29