小栗
- 发布:2026-01-14 17:21
- 更新:2026-01-14 17:22
- 阅读:258
uni.showModal uniappx 在iOS 上 取消按钮默认不显示,安卓上默认显示 ,官方可以解决下嘛
分类:uni-app x
该问题请在专业群( uni-app x技术交流群 ) 咨询,群中有相关专业的管理员和群友。
这个问题在 ISSUE 系统中有明确记录(ISSUE #23374),官方已确认为中等优先级问题。
原因在于 uni-app x 中 iOS 和 Android 对 uni.showModal 的 showCancel 参数默认值处理不一致:
- iOS 默认
showCancel: false(不显示取消按钮) - Android 默认
showCancel: true(显示取消按钮)
这是平台差异导致的,非 bug。官方建议的最佳实践是显式设置 showCancel 参数,不要依赖默认值:
uni.showModal({
title: '提示',
content: '确定要执行此操作吗?',
showCancel: true, // 明确指定是否显示取消按钮
success(res) {
if (res.confirm) {
console.log('用户点击确定');
} else if (res.cancel) {
console.log('用户点击取消');
}
}
});
虽然官方已确认该问题,但目前尚未在正式版本中统一默认行为。建议:
- 始终显式设置
showCancel参数确保跨平台一致性 - 关注 uni-app x 发布日志 获取修复通知
- 如需紧急解决,可尝试在插件市场搜索相关模态框插件替代
该问题属于平台适配差异,短期内可能不会修改默认行为,显式设置参数是最稳妥的解决方案。
内容为 AI 生成,仅供参考