參考文檔:https://www.it610.com/article/1306143038938058752.htm
在使用uniapp開發(fā)APP的時候,很多時候需要用到自動登錄功能,由于uniapp默認顯示的第一頁是在pages.json中設置的第一項,如果我們將登錄頁設置為pages.json中第一項的話,在自動登錄首頁的時候會從登錄頁一閃而過;如果設置首頁為pages.json中第一項的話第一次登錄App則會從首頁一閃而過,如果是多身份登錄的App則設置哪一個身份的首頁當做第一顯示頁面也都不合適。
解決方法:
- 修改默認的啟動界面參數(shù),當頁面加載完畢再手動關(guān)閉啟動頁面;
設置空白頁作為第一啟動頁
- 首先修改manifest.json配置文件關(guān)閉默認啟動界面
"app-plus" : {
"usingComponents" : true,
"nvueCompiler" : "uni-app",
"compilerVersion" : 3,
"splashscreen" : { // 主要是修改該對象下的參數(shù)
"alwaysShowBeforeRender" : false,
"waiting" : false,
"autoclose" : false,
"delay" : 0
},
...
}
- 然后在App生命周期onShow或者在你需要的地方手動關(guān)閉啟動界面,設置的延遲時間不宜過長,不建議超過6s,跳轉(zhuǎn)到指定頁面
onShow: function() {
// 配置1秒后自動關(guān)閉啟動頁
setTimeout(() => {
// #ifdef APP-PLUS
plus.navigator.closeSplashscreen();
// #endif
}, 1000);
// 當啟動頁關(guān)閉時,頁面已經(jīng)跳轉(zhuǎn)到對應頁面了
let isLogin = uni.getStorageSync('isLogin')
if (isLogin) {
uni.redirectTo({
url: '/pages/dormManager/index'
})
}
},