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();
		}
相关推荐
用户6990304848754 天前
try catch使用场景 处理同步代码错误兼容用的
javascript·uni-app
ITKEY_4 天前
uniapp微信开发者工具 更改AppID失败 touristappid
uni-app
Geek_Vison4 天前
APP瘦身实战:从80MB+砍到15MB——基于小程序容器技术剥离APP非核心业务的实践分享
小程序·uni-app·mpaas
CHB5 天前
HDC2026 演讲实录|AI 驱动的跨端进化:利用 uni-agent 快速构建高性能鸿蒙应用
uni-app·harmonyos
2501_915918415 天前
iOS App性能测试工具的实现方法与优化循环指南
android·ios·小程序·https·uni-app·iphone·webview
斯内普吖5 天前
(开源)高校素拓分管理系统小程序实战指南 基于 Java + SpringBoot + uni-app + Vue + MySQL
java·spring boot·mysql·小程序·uni-app·开源
海阔天空66885 天前
uniapp开启调试模式
uni-app·uniapp开启调试模式
anyup6 天前
分享 5 套 uni-app 实用主题,一键适配暗黑模式
前端·uni-app·视觉设计
gg159357284606 天前
Uni-app跨平台开发全解课程:从零基础到企业级多端落地实战
vue.js·uni-app
xshirleyl7 天前
uniapp小兔鲜儿day3
uni-app