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)
						}
					})
				},
			})
		})
	}
相关推荐
小徐_233320 小时前
Open Wot 1.0.5 发布:让 AI 接入 wot-ui,只需要两条命令
前端·uni-app·ai编程
AI多Agent协作实战派1 天前
AI多Agent协作系统实战(二十二):从6列到12列——任务监控报告的进化之路
java·人工智能·uni-app·bug
小杨小杨、努力变强!1 天前
VS Code运行HBuilder X中的uni-app项目
vscode·uni-app·uni-app run
码兄科技1 天前
实战:基于Spring Boot + UniApp的地理信息小程序开发
spring boot·后端·uni-app
2501_916007472 天前
iOS和macOS应用程序性能分析和优化工具使用综合指南
android·macos·ios·小程序·uni-app·iphone·webview
2501_916007473 天前
深入理解HTTPS对称与非对称加密机制及Charles抓包实践
网络协议·http·ios·小程序·https·uni-app·iphone
小徐_23333 天前
AI 写 wot-ui 总在猜 API?我们把 Skills、MCP 和 CLI 都配好了
前端·uni-app·ai编程
Liu.7743 天前
uni-app 组件 uni-easyinput 常见 Bug 及解决方案
uni-app·bug
小徐_23334 天前
uni-app 项目别再从零搭了!3 个 Wot UI 起手模板怎么选?
前端·uni-app
蜡台4 天前
uniapp pdf文件预览组件
pdf·uni-app·合同·pdfh5