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

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

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

这样就解决了。

相关文章

怎么样合并一个或多个PDF文件?

经常有小伙伴问丁老师,说扫描出来的PDF图片,都是一个一个的,怎么样把他们合并成一个文件呢?我说你去下载一个PDF工具就好了呀,有某某PDF共阅读器、编辑器嘛。小伙伴说不行呀丁老师,因为网上的这些PDF工具有以下缺点:1.体积太大。动辄...

Css3中position:sticky无效...

有同学在前端写css代码时,遇到问题,使用的css3,写的是position:sticky,想要内容滚动到该区域,该区域自动置顶滑动。但一直无效,经过丁老师研究后发现,该区域没有定义高度,而使用position:sticky时,是必须要...

抖音小程序开发的流程是什么?

开发抖音小程序是一个涉及多个步骤的过程,需要准备相应的资料和工具。以下是开发抖音小程序需要准备的资料和步骤:1. 入驻抖音开发平台:首先,你需要在抖音开放平台注册一个开发者账号,并完成主体认证和对公认证。如果未完成认证,你可以在沙盒工具...

Moment.js设置英文为中文的方法

Moment.js是一个不错的时间处理类js封装包,从官网下载默认是英文的,比如moment().format('dddd')显示出来是Tuesday,如果要显示中文的话,有两种方法:1.moment-with-loca...

推荐文章

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

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

photoshop打不开任何文件的解决方法

有同学反应,在使用photoshop时,忽然文件打不开了,先后试了下psd格式、jpg格式、png格式的,等等等等,全都打不开,重启了电脑也不行,这是怎么回事呢?经过丁老师研究后发现,这是因为安装的是非正版photoshop,在使用时,没有...

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

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

微信小程序和APP有什么区别?到底该做哪个?

经常有新客户咨询丁老师,微信小程序和APP有什么区别呢?一般情况下来说应该做哪个?今天丁老师就这个问题做一下介绍。微信小程序和APP的区别微信小程序微信小程序微信平台运行,无需下载安装,用户通过微信搜索、扫码或者朋友分享就能直接使用,用完即...

当前在线
免费咨询