为了账号安全,请及时绑定邮箱和手机立即绑定

如何正确使用 AntD FormInstance 函数?

如何正确使用 AntD FormInstance 函数?

陪伴而非守候 2023-03-10 14:40:08
我正在尝试在用户提交表单之前验证用户的输入。如何将输入字段值传递给我的 validateInput 函数,如果它返回 false 触发器并在字段中应用以下属性hasFeedback,validateStatus以及helpconst Demo = () => {  const [form] = form.useForm();  const onFinish = (values) => {    console.log("Success:", values);  };  const onFinishFailed = (errorInfo) => {    console.log("Failed:", errorInfo);  };  const validateInput = (input) => {    const isEmailFormatValid = `regex...`;    var check = input.match(validateFormat);    return check  };  return (    <Form      form={form}      name="basic"      initialValues={{        remember: true,      }}      onFinish={onFinish}      onFinishFailed={onFinishFailed}    >      <Form.Item        label="Email"        name="email"        / * hasFeedback         validateStatus="warning"        help="Invalid email format" */        rules={[          {            required: true,            message: "Please input your email!",          },        ]}      >        <Input />      </Form.Item>      <Form.Item        label="Password"        name="password"        rules={[          {            required: true,            message: "Please input your password!",          },        ]}      >        <Input.Password />      </Form.Item>      <Form.Item>        <Button block type="primary" htmlType="submit">          Submit        </Button>      </Form.Item>    </Form>  );};
查看完整描述

1 回答

?
largeQ

TA贡献2039条经验 获得超7个赞

<Form.Item>proprules是一个数组,因此您可以向其中添加许多规则。


如果你想检查电子邮件输入是否不为空,同时是一个有效的电子邮件,你可以这样做:


<Form.Item

  label="Email"

  name="email"

  rules={[

    {

      required: true,

      message: "Please input your email!",

    },

    {

      pattern: /your email regex here/,

      message: "Invalid email format",

    },

  ]}

>

  <Input />

</Form.Item>

不需要额外的验证功能。如果不符合指定的正则表达式,将自动显示错误。


你可以在这里看到ant design input的所有规则


查看完整回答
反对 回复 2023-03-10
  • 1 回答
  • 0 关注
  • 210 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信