# Prompt
返回Promise< string>
# 配置项
param | type | default | desc |
---|---|---|---|
title | string | '提示' | |
message | string | '' | |
okText | string | '确定' | |
cancelText | string | '取消' | |
wait | function / null | null | 支持异步式调用 传入next参数 并在函数体中调用next()即可实现异步式调用 效果与alert wait 类似 但是一旦进入加载状态 将隐藏取消按钮 第二个参数将返回输入数据 |
fieldMessageTest | function | null | 非必填,如果传入 必须返回boolean值 返回true验证通过,返回false验证失败,并会尝试调用fieldMessageError字段的函数 |
fieldMessageError | function | null | 非必填,如果fieldMessageTest函数返回false,将调用本函数 |
# 基础用法
async () => {
let res = await dialogX.prompt({message: '请输入地址'})
dialogX.alert({message: res ? `您输入了 ${res}` : '您什么也没有输入'})
}
# 校验文本域以及异步关闭
TIP
校验文本域和异步调用可以分别使用也可以统一使用
意味着你可以只填写wait参数 也可以只填写fieldMessageTest fieldMessageError参数
也可以全部填写,文档展示的是全部填写的情况
const initUserName = async () => {
let res = await dialogX.prompt({
message: '请输入用户名',
fieldMessageTest: fieldMessage => { // 如果这个参数存在,则会在点击确认前校验该参数。如果返回false,将不会继续执行并且调用fieldMessageError函数 必须返回布尔值
return fieldMessage ? true : false
},
// 失败的话将会调用这个函数 不执行wait函数
fieldMessageError: fieldMessage => {
this.$dialog.alert({
message: '请填写正确信息'
})
},
wait: async (next, result) => { // result参数为用户填写的文本信息
let res = await axios.post('xxx', {body: {username: result}})
if (res.code === 200) {
next()
} else {
// 如果请求失败 那么提示之后
await this.dialogX.alert({
message: '请求失败'
})
// 重新弹窗
this.inputUserName()
next()
}
}
})
dialogX.alert({
message: '您的信息已提交'
})
}