首页 > 原创文章 > 软件开发 > 查看文章

Uniapp开发小程序和app时,根据登录状态判断首页onlaunch失效方法解决

所属分类:软件开发 来源: 丁老师原创 发布时间:2024-05-07 20:24 浏览: 5692 IP属地: 深圳
微信小程序开发

在使用uniapp开发app和小程序时,经常会用到打开app/小程序时,根据登录状态判断是显示首页还是跳转登录页的功能。此功能在app.vue的onlaunch方法中定义,方法如下:

onLaunch: function() {
	const _user=uni.getStorageInfo('user');
	if(_user){
		//已登录,默认首页,不处理
		// #ifdef APP-PLUS
			plus.navigator.closeSplashscreen();
		// #endif
	}
	else{
		//未登录,跳转到登录页
		uni.reLaunch({
			url:'/pages/login',
			success() {
				// #ifdef APP-PLUS
					plus.navigator.closeSplashscreen();
				// #endif
			}
		});
	}
},

但是在测试中发现,当用户未登录时,app/小程序没有跳转到login页,而是出现了空白,这是怎么回事呢?

经过丁老师不断的研究发现,这是uniapp的一个bug,系统在onLaunch的时候,同步reLaunch导致了系统出错。
解决办法,增加一个延时为0的timeout即可,代码如下:

setTimeout(() => {
	uni.reLaunch({
		url:'/pages/login'
	});
},0)

这样就解决了。

相关文章

微信支付提示201 订单号重复的解决办法

问题:在做微信支付对接时,四端(PC+H5+小程序+APP)调用微信支付,出现了201,订单号重复的提示,提交的订单号、金额等信息并没有变,经过仔细检查后,发现是提交的trade_type不同造成的,根据四端在提交时,分别对trade_...

软著申请需要哪些材料?费用多少钱?多久能办理...

经常有客户咨询丁老师,想对自己开发的软件申请软件著作权,都需要什么材料,需要多少钱,办理下来需要多久呢?今天丁老师就对这个问题进行统一解答。申请软著所需材料1.软件程序源码,要求前30页和后30页,每页不少于50行代码。2.软件用户手册...

宝塔面板计划任务访问url无效的解决方法

最近,有同学在群里反馈,在使用宝塔面板时,预先设置好的计划任务-访问URL突然无法使用了,每天定时访问URL也都执行了,但是都返回curl: (52) Empty reply from server ★[2024-10-24 14:41...

微信小程序提示“手机号快速验证组件”资源包用...

微信小程序自2023年8月起,开始对《手机号快速验证组件》进行收费,每个小程序有1000次的免费额度,超过额度就要收费。说白了就是以后在使用微信小程序获取用户手机(用户主动授权)的时候,需要按次数收费了。那么,在当前的经济状况下,如何做...

推荐文章

小程序/APP定制开发价格标准价目表

类目价格标准备注商城小程序(小型)10-20万小型B2C/B2b商城,满足基本商城的所有功能商城小程序(中型)30-60万中型B2C/B2b商城,拥有类似淘宝、京东、拼多多的全部基本功能,可对接物流、仓储系统,支持高并发,安全性和稳定性有一...

Python3.12提示windows No...

在使用python3.12时突然遇到提示windows No module named distutils,研究了一下,把解决办法分享出来。1.安装 setuptools,它现在也提供 distutils;2.从第三方源(如系统软件包)载入...

如何删除idea软件搜索时的find mas...

在使用idea系列的配套软件时,如intellij idea、Php Storm、Web Strom时,在搜索文件时,右上角的file mask可以筛选指定类型的文件。但是有时候可能会输入错误,产生多个记录,而且没办法删除,在以后的开发中经...

Mysql导入文件,source命令/php...

用phpmyadmin导入大数据库文件时,容易502 bad gateway,可以直接在linux上用mysql原生命令导入。1.上传sql文件到目录用Xshell登录服务器,将迁移过来的 sql 文件移到 home 目录下,方便下一步的...