使用正则表达式进行formik表单验证

deikduxw  于 2021-09-13  发布在  Java
关注(0)|答案(1)|浏览(203)

我正在使用formic表单库创建我的表单。我需要验证我的文本框。这是我的验证文件

import * as Yup from "yup";
const POValidation = Yup.object().shape({
  tax: Yup.number().typeError("Amount is invalid")
});
export { POValidation };

这是我的箱子

<Form.Control
          type="text"
          size="sm"
          placeholder=""
          name="tax"
          onChange={handleChange}
          onBlur={handleBlur}
          value={values.tax}
          className={errors.tax && touched.tax && "input-error"}
        />

目前它只允许数字。但是字母可以输入。我需要避免在这个文本框中输入字母。我是怎么做到的

8gsdolmq

8gsdolmq1#

是的,有一个 matches 方法,该方法允许检查正则表达式。

Yup.string().matches(/^[0-9]+$/, "Only number allowed")

该方法的第一个参数是regex,第二个参数是regex失败时抛出的错误消息。

相关问题