AlertInput处理程序永远不会被调用

时间:2019-08-06 13:41:17

标签: reactjs typescript ionic-framework ionic4

我正在将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();
}

1 个答案:

答案 0 :(得分:0)

tl; tr 此功能未在ionic4中实现:ionic/issues/19059


比较rendering a checkbox in an alertany other input element的离子代码后,我得出一个可悲的结论,即您要查找的功能不存在。

目前,仅复选框和单选输入支持在警报中输入handler的情况

was a PR for ionic3validators添加了AlertInputs选项以提供角度形式验证,但在ionic4中不再可用。

据我所知,ionic3 requesting input validation for alert inputs仍存在一个未解决的问题,而ionic4尚未解决。


更新new feature request for ionic4