uni-app编写微信小程序使用uni-popup搭配uni-popup-dialog组件在ios自动弹出键盘。

uni-popup-dialog 对话框

将 uni-popup 的type属性改为 dialog,并引入对应组件即可使用对话框 ,该组件不支持单独使用

示例

html 复制代码
<button @click="open">打开弹窗</button>
<uni-popup ref="popup" type="dialog">
	<uni-popup-dialog mode="input" message="成功消息" :duration="2000" :before-close="true" @close="close" @confirm="confirm"></uni-popup-dialog>
</uni-popup>
javascript 复制代码
export default {
	methods: {
		open() {
			this.$refs.popup.open()
		},
		/**
		 * 点击取消按钮触发
		 * @param {Object} done
		 */
		close() {
			// TODO 做一些其他的事情,before-close 为true的情况下,手动执行 close 才会关闭对话框
			// ...
			this.$refs.popup.close()
		},
		/**
		 * 点击确认按钮触发
		 * @param {Object} done
		 * @param {Object} value
		 */
		confirm(value) {
			// 输入框的值
			console.log(value)
			// TODO 做一些其他的事情,手动执行 close 才会关闭对话框
			// ...
			this.$refs.popup.close()
		}
	}
}

PopupDialog Props

属性名 类型 默认值 说明
type String success 对话框标题主题,可选值: success/warn/info/error
mode String base 对话框模式,可选值:base(提示对话框)/input(可输入对话框)
title String - 对话框标题
content String - 对话框内容,base模式下生效
confirmText 1.7.4新增 String - 定义确定按钮文本
cancelText 1.7.4新增 String - 定义取消按钮文本
maxlength 1.8.6新增 Number - 限制输入框字数(当mode="input"时生效)
showClose 1.8.5新增 Boolean - 是否显示取消按钮
value String\Number - 输入框值,input模式下生效 注:1.9.0之后为双向绑定,vue2通过value,vue3通过v-model绑定
placeholder String - 输入框提示文字,input模式下生效
borderRadius String - 四周圆角值(左上、右上、右下、左下) 示例:"20px 20px 20px 20px"
before-close Boolean false 是否拦截按钮事件,如为true,则不会关闭对话框,关闭需要手动执行 uni-popup 的 close 方法

PopupDialog Events

事件称名 说明 返回值
close 点击dialog取消按钮触发 -
confirm 点击dialog确定按钮触发 e={value:input模式下输入框的值}

PopupDialog Slots

名称 说明
default 自定义内容,会覆盖原有的内容显示(关键)

解决此问题的关键问题:

就在于不要使用默认的输入,要借用默认插槽进行覆盖

修改后代码如下:

html 复制代码
<uni-popup ref="newDeviceGroupRef" type="dialog">
	<uni-popup-dialog mode="input" title="新建设备组" :before-close="true" @close="dialogInputClose"
		@confirm="dialogInputConfirm">
		<view style="width: 100%;">
			<uni-easyinput type="text" v-model="inPutValue" placeholder="请输入设备组名" />
		</view>
	</uni-popup-dialog>
</uni-popup>
相关推荐
黑科技iOS上架3 小时前
双引擎解决oc/swift开发引用加固难题
开发语言·ios·swift·审核·ios混淆·执行程序差异化
wechatbot8884 小时前
企微第三方自动化开发:原生能力无阉割 API 开放平台介绍
后端·ios·微信·企业微信·ai编程·ipad
黑科技iOS上架4 小时前
iOS framework/dylib动态库定向加固实战
macos·ios·objective-c·cocoa·审核·ios混淆·执行程序差异化
可乐鸡翅yeah_1 天前
fmp4 碎片 MP4 格式 HLS 流,和传统 TS 分片有什么不一样
开发语言·javascript·ios·音视频·safari·m3u8·m3u8在线播放
茶底世界之下1 天前
为什么高精度透明图片上传到 Metal 时,必须把“拷贝像素”与“混合合成”分开
ios
老李IT笔记1 天前
iOS 27 更新延迟只能给 1 到 90 天:两个参数怎么配,配错了会发生什么
ios·智能手机
Helix2501 天前
移动端浏览器内核之争:iOS 为何强制使用 WebKit?
ios·safari·webkit·wkwebview·浏览器内核·blink·ios浏览器内核
传奇开心果编程2 天前
【SwiftUI提高练中学】第13课 实时活动与灵动岛:ActivityKit 实战
学习·ui·ios·swiftui·swift
可乐鸡翅yeah_2 天前
M3U8 防盗链 URL‑Token 签名,新手开发实操避坑
开发语言·javascript·ios·音视频·safari