getCurrentPages() 方法用於擷取當前頁面棧的執行個體,返回頁面數組棧。第一個元素為首頁,最後一個元素為當前頁面。
架構以棧的形式維護當前的所有頁面。路由切換與頁面棧的關係如下:
路由方式 | 頁面棧表現 |
|---|---|
初始化 | 新頁面入棧 |
開啟新頁面 | 新頁面入棧 |
頁面重新導向 | 當前頁面出棧,新頁面入棧 |
頁面返回 | 當前頁面出棧 |
Tab 切換 | 頁面全部出棧,只留下新的 Tab 頁面 |
下面代碼可以用於檢測當前頁面棧是否具有 5 層頁面深度。
if(getCurrentPages().length === 5) {
my.redirectTo('/pages/logs/logs');
} else {
my.navigateTo('/pages/index/index');
}說明
不要嘗試修改頁面棧,否則會導致路由以及頁面狀態錯誤。