Ionic Navigating Lifecycle Events!
Ionic 官方blog摘选
Lifecycle events
Ionic 2 Navigation events are quite similar to those from iOS.
In summary, these are the events:
-
ionViewDidLoad
: Fired only when a view is stored in memory. This event is NOT fired on entering a view that is already cached. It’s a nice place for init related tasks. -
ionViewWillEnter
: It’s fired when entering a page, before it becomes the active one. Use it for tasks you want to do every time you enter in the view (setting event listeners, updating a table, etc.). -
ionViewDidEnter
: Fired when entering a page, after it becomes the active page. Quite similar to the previous one. -
ionViewWillLeave
: Fired when you leave a page, before it stops being the active one. Use it for things you need to run every time you are leaving a page (deactivate event listeners, etc.). -
ionViewDidLeave
: Fired when you leave a page, after it stops being the active one. Similar to the previous one. -
ionViewWillUnload
: Fired when a view is going to be completely removed (after leaving a non-cached view).
Nav guards
As a bonus track, there are two other powerful methods related to those events: nav guards. Those methods are focused on view access control (with authentication purposes).
-
ionViewCanEnter
: Fired before entering into a view, allows you to control whether the view can be accessed or not (returning true or false). -
ionViewCanLeave
: Fired before leaving a view, allows you to control whether the view can be left or not.