- 問題描述:
有一種場景就是進入頁面需要判斷登錄狀態(tài),沒有登錄則跳轉(zhuǎn)登錄頁面,如果登錄了就是跳轉(zhuǎn)首頁 .
有的人把登錄頁面放到pages的第一個頁面,有的人把首頁放到pages的第一頁面.其實無論誰放到第一頁面都是出現(xiàn)異常情況,如把登錄頁當?shù)揭粋€,那么沒登錄的時候是正常的,當?shù)卿洺晒?再次打開程序,則不應該再進入登錄頁,但現(xiàn)實是會從登錄頁一閃而過,甚至有些出現(xiàn)沒有跳轉(zhuǎn)的情況 - 解決方法
把一個空白頁面放到pages里作為啟動頁,然后在這個空白頁面進行是否登錄的邏輯判斷
//pages的設(shè)置
"pages": [ //pages數(shù)組中第一項表示應用啟動頁,參考:https://uniapp.dcloud.io/collocation/pages
{
"path":"pages/JudeLoginPage/JudeLoginPage",
"style":{
"navigationBarTitleText": "",
"enablePullDownRefresh": false,
"navigationStyle" : "custom"
}
},
....
]
空白頁面的邏輯處理
created() {
console.log('App Launch')
// token標志來判斷
let token= uni.getStorageSync('token');
console.log(token);
if (!token) {
console.log('沒有token'),
//跳到登錄頁面.relaunch可以打開任何界面
uni.reLaunch({
url:'/pages/login/login'
})
} else {
console.log('有token')
//跳到首頁,跳轉(zhuǎn)tabbar界面,必須使用這個方法
uni.switchTab({
url: '/pages/home/home'
})
}
},
完結(jié)
補充

uniapp官網(wǎng)說明截圖