uniapp的扩展组件uni-popup 弹出层自动打开

我的需求是在页面加载完之后自动打开弹窗,自动打开只能写在onReadymounted 生命周期内,这是这个组件的规定:

  • 如果想在页面渲染完毕后就打开 uni-popup ,请在 onReadymounted 生命周期内调用,确保组件渲染完毕,

但我需要在onShow()生命周期函数内判断用户是否已登录,已登录之后再去让弹窗自动打开,直接写在已登录后面会提示报错,弹窗打不开,打不开的原因是此时页面还未加载完,那么页面加载完之后再去执行弹窗打开语句就可以了,用一次性定时器加一点延迟,在定时器里面再执行弹窗打开的方法就不会报错了,我设了5毫秒之后,弹窗出现的效果也看不出多大区别。主要代码如下:

复制代码
<!--订阅消息弹窗-->
<uni-popup ref="popupdingyue" type="center" :animation="false" :mask-click="false" mask-background-color="rgba(0,0,0,0.6)">
	<view class="tcbox">我是弹窗</view>
</uni-popup>
<!-- 弹窗结束位置 -->


onShow(){
			let that=this
			//判断用户是否登录
			let loginphone= uni.getStorageSync('loginphone');
			console.log("首页从缓存读取的loginphone",loginphone)
			if(!loginphone){
				console.log("loginphone为空跳到登录页面")
				uni.redirectTo({
				 	url:"../login/login",
				})
			}else{
                setTimeout(function(){
					that.$refs.popupdingyue.open() //打开提示弹窗
				},5) //5毫秒之后执行这个方法,只执行一次
				
			}
			
},
相关推荐
赵庆明老师1 小时前
uniapp 微信小程序页面JS模板
javascript·微信小程序·uni-app
熬耶1 小时前
uniapp 简单实现列表左滑操作
uni-app
小白学过的代码2 小时前
UniApp 引入 Cesium 开发: RenderJS 避坑
uni-app
jingling5552 小时前
uni-app 安卓端完美接入卫星地图:解决图层缺失与层级过高难题
android·前端·javascript·uni-app
2501_9159184119 小时前
iOS 开发中证书创建与管理中的常见问题
android·ios·小程序·https·uni-app·iphone·webview
00后程序员张20 小时前
IOScer 开发环境证书包括哪些,证书、描述文件与 App ID 的协同管理实践
android·ios·小程序·https·uni-app·iphone·webview
天府之绝20 小时前
Uniapp App(Android)端 非媒体文件的选择、上传、下载、查看功能
uni-app
ZEGO即构开发者1 天前
uni-app 集成音视频 SDK 全攻略:30 分钟搭建跨端视频通话功能
uni-app·音视频·视频通话功能
Hzsilvana1 天前
在 uni-app 中检测 APP 端是否有通知权限
uni-app
咸虾米_1 天前
uniapp使用history路由模式打包上线到前端网页托管的注意事项
前端·uni-app·vue3·unicloud·前端网页托管