uniapp 通过通道$on或者$once调用函数内的showModal弹窗,但是没有反应

原因分析:

在微信小程序环境里,uni.showModal(也就是你封装的 showModel)只有在页面处于前台时才弹得出来

你把监听从 uni.once 改成 uni.on 后依旧"弹不出来",根本原因并不是事件没触发,而是触发时页面已经不可见(onHide 之后)。微信小程序的原生弹窗在页面不可见时会被系统直接忽略,所以用户看不到任何提示。


解决方案:

提示:使用nextTick包裹,在下一次页面渲染前执行

复制代码
function continueRelation(data) {
		nextTick(() => {
			console.log('continueRelation', data, showModel)
			showModel({
				title: "关联配件",
				content: "是否关联配件 "+data.map(e=>e.title).join('、'),
				confirm: () => {
					const parts = data.map(e => {
						return {
							taskId: oprateId.value,
							partId: e.id,
							partName: e.title,
							partImg: e.img,
							price: e.price,
							quantity: e.num,
							amount: e.price * e.num
						}
					})
					console.log("parts", parts)
					glPjShopOrder({
						id: oprateId.value,
						partList: parts
					}).then(res => {
						if (res.code == 200) {
							showSuccess("关联成功")
							const timer = setTimeout(() => {
								oprateFn && oprateFn()
								clearTimeout(timer);
							}, 1000)
						}
					})
				},
			})
		})
	}
相关推荐
游戏开发爱好者816 小时前
App Store 上传 IPA 自动化,.p8 密钥认证与 CI/CD 接入实战
android·运维·ci/cd·小程序·uni-app·自动化·iphone
游戏开发爱好者817 小时前
iOS 推送怎么配置,APNs 推送证书、设备库与群发
android·ios·小程序·https·uni-app·iphone·webview
AI_AGENT_DEV_AI1 天前
原生 APP 开发的开发优点
uni-app
JackieDYH2 天前
uniapp-通知滚动组件+轮播图组件封装-案例
uni-app·轮播图·通知
2501_915921432 天前
appuploader-cli 命令行上传 IPA 到 App Store Connect upload CI 集成
android·ci/cd·小程序·https·uni-app·iphone·webview
结网的兔子3 天前
【前端开发】UniApp 项目地图选型与Web-APP跨端迁移方案
前端·uni-app
2501_916007473 天前
Bundle ID 注册与管理 App ID 创建指南 命名规则 权限开关与删除注意事项
android·ios·小程序·https·uni-app·iphone·webview
PedroQue994 天前
uni-app路由插件化:解锁高效开发新姿势
前端·uni-app
2501_915909064 天前
iOS 证书创建与管理 类型限制 p12 密码与云备份实操
android·ios·小程序·https·uni-app·iphone·webview
anyup4 天前
【2026年8月】uView Pro 千星,还拿到了 GVP
前端·uni-app·github