首页 > 文章列表 > 相关知识 > 查看文章

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

所属分类:相关知识 来源: 丁老师原创 更新时间:2024-05-07 20:24 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)

这样就解决了。

dls6.jpg

相关文章

python3.12提示windows No...

在使用python3.12时突然遇到提示windowsNomodulenameddistut...

excel自动计算每一行成绩之和的方法

excel有一个表格,需要自动计算每一行的乘积,最后计算总和,图示如下可以使用SUMPROD...

ojs期刊系统配置邮箱发信功能的方法

ojs期刊系统,配置email邮箱发信功能的方法:1.打开根目录下的config.ini.p...

微信小程序图片显示不了报404错误的解决办法

该问题指针对使用宝塔BT面板的同学。在日常开发微信小程序的过程中,突然发现很简单的一个图片调...

推荐文章

CI框架页面添加全局变量的方法

CI框架是一款很小却又非常强大的PHP程序框架,非常适合用来搭建中小型网站以及扩展程序。有同...

fastadmin btn-dialog按钮...

fastadmin里自定义按钮的btn-dialog,弹出窗口时默认大小,设置了data-a...

国外VPS购买后如何登录?

国外很多VPS购买后,只有密码,没有登录账号,如何登录呢?我们以one.com为例,购买了V...

videojs宽度高度自适应100%的方法

videojs是一款非常不错的htmlvideo播放器插件,很多同学经常在群里问我,说丁老师...

QQ咨询 微信咨询 电话咨询