すでにインスタンス化されているページに戻ったときにngOnInit()
メソッドが呼び出されないことに気付きました。私はこれに他の方法を使わなければなりませんか?特定のページにアクセスするたびに呼び出されるメソッドが必要です。戻る時にngOnInitが呼び出されない
EDIT はすでにonPageWillEnter()
テストされたが、唯一のパラメータ値が変更されたこと、そしてコンポーネントを再利用されるように、あなたがルートを変更した場合、それはイオン2
すでにインスタンス化されているページに戻ったときにngOnInit()
メソッドが呼び出されないことに気付きました。私はこれに他の方法を使わなければなりませんか?特定のページにアクセスするたびに呼び出されるメソッドが必要です。戻る時にngOnInitが呼び出されない
EDIT はすでにonPageWillEnter()
テストされたが、唯一のパラメータ値が変更されたこと、そしてコンポーネントを再利用されるように、あなたがルートを変更した場合、それはイオン2
チェックリンクでLifecycle Eventsセクション。あなたは、イオン2ライフサイクルフックを使用することができます
ionViewWillEnter(){
//your methods
}
では発生しませんます。
あなたは
constructor(router:Router) {
router.params.subscribe(val => myInit());
}
ではなく、そのような場合にngOnInit()
を使用しての初期化コードを呼び出すために使用することができます。
ページが訪問するたびにngOnInitを呼び出すには、ngOnDestroyを使用する必要があります。あなたのコンポーネントのコンテンツは、URL内のコードに依存している場合たとえば、あなたがこのような方法で、OnDestroy使用する必要があります。
export class GRMTasksComponent implements OnInit, OnDestroy {
subParams: Subscription;
ngOnInit() {
this.subParams = this._route.params.subscribe(params => {
//some code...
});
}
ngOnDestroy() {
this.subParams.unsubscribe();
}
}
https://angular.io/docs/ts/latest/guide/lifecycle-hooks.html –