ionic-team / ionic-team/ionic-framework
Lifecycle events called in wrong order
- Dominant language
- TypeScript
- Stars
- 52.7k
- Forks
- 13.3k
- Avg merge
- 1d 14h
- Merged PRs (30d)
- 50
Description
# Bug Report
**Ionic version:**
[x] **4.0.0**
**Current behavior:**
When changing the root page the lifecycle events of the previous and next page seem to fire out of order. So, lets say page A is currently displayed. Navigating to page B fires the lifecycle events in the following order:
1. Page B: ngOnInit
2. Page B: ionViewWillEnter
3. Page B: ionViewDidEnter
4. Page A: ngOnDestroy
(ionViewWillLeave and ionViewDidLeave do not fire at all)
**Expected behavior:**
I would expect that page A fires ngOnDestroy or ionViewWillLeave or ionViewDidLeave before page B's 'enter' events
Contributor guide
Research direction
Start by reproducing the reported navigation from page A to page B in Ionic 4.0.0 and log ngOnInit, ionViewWillEnter, ionViewDidEnter, ngOnDestroy, ionViewWillLeave, and ionViewDidLeave. Trace the lifecycle handling involved in root-page changes; done means the previous page's leave or destroy lifecycle occurs before the next page's enter events, with the expected callbacks firing.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- angular, typescript
- Domain
- frontend, mobile
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100