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();
		}
相关推荐
MY_TEUCK15 小时前
【AI开发】从0到1写一个uni-app Vue3 小程序开发的Skill:用法、流程与踩坑复盘
人工智能·uni-app
雪芽蓝域zzs16 小时前
uni-app x uts类转换
uni-app
游戏开发爱好者816 小时前
深入理解iOSTime Profiler:提升iOS应用性能的关键工具
android·ios·小程序·https·uni-app·iphone·webview
gskyi16 小时前
UniApp Vue3 数据透传终极指南
javascript·vue.js·uni-app
gskyi16 小时前
uni-app 高阶实战:onLoad与getCurrentPages深度技巧
前端·javascript·vue.js·uni-app
阿奇__1 天前
uniapp支付宝 H5 开发踩坑,hash模式下取参要规范!
开发语言·uni-app
云起SAAS1 天前
小智笔记APP源码 | 8大广告联盟聚合(穿山甲/优量汇/快手/百度) | 应用市场过审极速版 | uni-app全栈商用项目
笔记·uni-app·广告联盟·笔记app
蹦哒2 天前
UniApp 原生插件开发完整指南
uni-app
a_Ichuan2 天前
在HBuilderX创建的uniapp项目中使用unocss
前端·uni-app
web前端神器2 天前
记录uniapp小程序的报错
小程序·uni-app·apache