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

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

所属分类:软件开发 来源: 丁老师原创 发布时间:2024-05-07 20:24 浏览: 6523 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)

这样就解决了。

相关文章

Wordpress安装时出现Error es...

群里有个做外贸的朋友,准备使用wordpress建个外贸站,但是自己在安装时,却安装失败,提示“Error establishing a database connection”,这是什么原因,该怎么解决呢?故障分析:1.Error e...

R语言读取多个zip文件数据的方法

如何实现用R语言一次读取多个zip文件,获取zip文件里的数据?今天丁老师教给大家。R语言可以使用zip_vector函数,可以读取所有zip压缩文件里的内容,并且无需使用循环。代码示例:datprocessorC <- func...

Hbuilder开发APP时,找不到真机的解...

正确的USB连线,其次打开开发者选项、USB调试,这些都是老生常谈,就不说了。在确保以上操作无误后,如果还找不到真机,关闭IDE,然后去adb的目录下,即HBuilderX\plugins\launcher\tools\adbs,把ad...

hash_hmac(): Unknown h...

最近在使用Fastadmin时,突然遇到一个奇怪的问题,程序抛出“hash_hmac(): Unknown hashing algorithm”异常。之前都好好的,怎么突然就遇到这么个问题呢?查看了下Driver.php这个源码,发现在...

推荐文章

微信小程序从开发到实现微信支付的全过程

微信小程序部分一、完善小程序基本信息1.用管理员账号登录微信小程序(https://mp.weixin.qq.com/);2.左侧菜单选择首页;3.完善小程序的基本信息,包括小程序名称、小程序类目、微信认证、微信备案等。二、小程序开发配置1...

用AI制作的软件是否可以申请软著?丁老师解答

目前随着AI的不断发展,Vibe Coding的持续普及,诞生了大量的AI软件开发工具(IDE),通过这些工具,可以让一个不懂软件开发的人、没有任何技术能力的人使用AI来开发出想要的软件、网站等等。有同学咨询丁老师,使用AI开发的软件,可以...

Mysql 1267 Illegal mix...

这个问题,用普通sql语句查询,好解决,把表的字符编码改为对应的就可以了。 但在使用视图查询时,比如select 'aaa' as type from xxx; select * from view where type=...

小程序开发的流程费用以及需要什么准备材料?

小程序定制开发的流程和费用,以及需要准备的材料,(包括但不限于微信小程序、百度小程序、支付宝小程序、抖音小程序、小红书小程序)具体如下:一、小程序开发的行政流程1.确定软件开发公司,和开发公司签订合同2.甲方支付首期开发费用3.乙方开始进行...