我正在将Ionic 4与React和Typescript一起使用。
我希望通过电子邮件输入和2个按钮(“取消”和“接受”)创建警报。
我希望“接受”按钮仅在用户提供有效的电子邮件地址时才可用。因此,我想在输入字段处理程序中使用正则表达式,但是永远不会调用该处理程序,无论是在键入时还是在按下Enter键时都不会。当用户键入
时,如何让它被蒙住async showAlert() {
var promise = await alertController.create({
header: "Recevez la photo dans votre boîte mail",
inputs: [{
name: "email",
type: "email",
placeholder: "email",
handler: () => {
console.log("input Fild Hanlder Called");
}
}],
buttons: [{
text: "cancel",
role: "cancel",
handler: cancel => {
console.log("cancel");
}
},
{
text: "envoyer photo",
role: "send",
handler: (alertData) => {
console.log((/^[a-zA-Z0-9]+@[a-zA-Z0-9]+\.[A-Za-z]+$/.test((alertData.email))));
}
}
]
});
await promise.present();
let result = await promise.onDidDismiss();
}
答案 0 :(得分:0)
tl; tr 此功能未在ionic4中实现:ionic/issues/19059
比较rendering a checkbox in an alert和any other input element的离子代码后,我得出一个可悲的结论,即您要查找的功能不存在。
目前,仅复选框和单选输入支持在警报中输入handler
的情况
有was a PR for ionic3向validators
添加了AlertInputs
选项以提供角度形式验证,但在ionic4中不再可用。
据我所知,ionic3 requesting input validation for alert inputs仍存在一个未解决的问题,而ionic4尚未解决。