0
我在從子組件路由時更新父組件時遇到了一些問題。我通過研究發現了這麼多,是否ngOnInit只會被調用一次,但是如何解決這個問題呢?我嘗試了不同的生命週期鉤子,但是我無法正確使用它們,或者根本不應該使用!有人可以幫忙嗎?謝謝!從子組件導航時更新父組件(角度)
我的路線:
{
path: 'dashboard',
component: DashboardComponent,
children: [
{
// when user is on dashboard component, no child component shown
path: '',
},
{ // detail component
path: ':table/:id', //
component: DetailComponent,
},
//some more child routes and components...
]
}
ngOnInit在儀表板構件(父)
ngOnInit() {
this.getSomething1(); // this populates an array
this.getSomething2(); // this populates an array
}
當用戶的動產從上面的陣列中的一個項目,用戶被路由到該項目的詳細信息頁面( DetailComponent)用戶可以在哪裏更新/刪除該項目。在子組件
方法,當用戶刪除的項目,用戶被路由到爲父級:
deleteItem(item: any) {
// some code...
this._router.navigate(['dashboard']);
}
所以一切工作正常,除了項目的數組沒有更新,因爲ngOnInit被稱爲一次。
所以我想運行方法getSomething1()
和getSomething2()
當用戶從子組件DetailComponent
路由回DashboardComponent
。
感謝您的幫助!
謝謝,這個作品很有魅力!只需將'DetailComponent.returned.next(false)'改爲'DashboardComponent.returned.next(false)',我將接受答案! :)感謝一堆! – Alex
不用擔心@ASomeOneJ!只是改變了錯誤。 –