uniapp启动页面鉴权页面闪烁问题

在使用uni-app开发app 打包完成后如果没有token,那么就在onLaunch生命周期里面判断用户是否登录并跳转至登录页。 但是在app中页面会先进入首页然后再跳转至登录页,十分影响体验。

处理方法:

使用plus.navigator.closeSplashscreen()

官网文档地址 app-splashscreen

勾选"等待首页渲染完毕后再关闭Splash图",表示需要等待首页渲染完成后再关闭启动界面

不勾选"等待首页渲染完毕后再关闭Splash图",则表示首页加载完成后就会关闭启动界面,此时首页可能没有完成渲染,在部分设备可能会闪一下白屏,不推荐使用。

根据官网配置启动项后在onLaunch声明周期中配置

|------------------------|---------|------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| 属性 | 类型 | 默认值 | 描述 |
| alwaysShowBeforeRender | Boolean | true | 是否等待首页渲染完毕后再关闭启动界面 |
| autoclose | Boolean | true | 是否自动关闭启动界面,仅当alwaysShowBeforeRender设置为false时生效,如果需要手动关闭启动界面,需将 alwaysShowBeforeRender 及 autoclose 均设置为 false |
| waiting | Boolean | true | 是否在启动界面显示等待雪花 |

代码控制关闭启动界面 App启动后不会自动关闭启动界面,需要在代码中调用plus.navigator.closeSplashscreen关闭启动界面

源码视图

javascript 复制代码
"app-plus" : {
    "splashscreen" : {
        "alwaysShowBeforeRender" : false,
        "autoclose" : false,
    }
}

App.vue中

javascript 复制代码
       const store = useMainStore()
       if(!store.token){
		   uni.reLaunch({
			   url:'/pages/login/login',
			   success:()=>{
				   plus.navigator.closeSplashscreen();
			   }
		   })
        }else{
			plus.navigator.closeSplashscreen();
		}
相关推荐
行走的陀螺仪1 天前
uni-app + Vue3编辑页/新增页面给列表页传参
前端·vue.js·uni-app
森之鸟1 天前
uniapp——配置鸿蒙环境,进行真机调试
华为·uni-app·harmonyos
2501_915918411 天前
常见 iOS 抓包工具的使用,从代理抓包、设备抓包到数据流抓包
android·ios·小程序·https·uni-app·iphone·webview
handsome09161 天前
uniapp打包的app,报This app was built with the iOS 18.1 SDK解决方案
ios·uni-app
yqcoder1 天前
uni-app 之 下拉刷新
运维·服务器·uni-app
liu_bees1 天前
微信小程序Canvas生成图片失败:canvas is empty问题解析
微信小程序·小程序·uni-app·vue
木子啊1 天前
Uni-app性能优化:分包与长列表实战
性能优化·uni-app
yqcoder2 天前
uni-app 之 设置 tabBar
运维·服务器·uni-app
家里有只小肥猫2 天前
uniApp下拉渐变头部 拿来即用
前端·javascript·uni-app
fanruitian2 天前
uniapp android开发 测试板本与发行版本
前端·javascript·uni-app