What's the possible reason $ionicHistory.currentView was not updated?


I’m developing a iOS app wrapped by Cordova on Ionic 1.3.1.

It has tab based navigation views, and recently I met sometimes when opening a subpage, its back arrow on the left top doesn’t appear. After breakpoints and debugging, I found that when switching to this tab, $ionicHistory.currentView was not set, which was still the previous tab, so the subpage was considered as the root page of this ion-nav-view.

It should be like

Tab1(currentView is Tab1) => Tab2(currentView is Tab2) => Tab2-1(currentView is Tab2-1)

but it’s like

Tab1(currentView is Tab1) => Tab2(currentView is still Tab1) => Tab2-1(currentView is Tab2-1)

Could you give a hint that what the possible reason is so I can dig around?


P.S. This can not be reproduced steadily.

P.P.S. I’m guessing too fast page switching, or too many historic views

I’m not sure my finding on currentView was right. I met it again and the backViewId of the subpage (Tab2-1) is null.
I cannot tell from the source code where it can happen