使用antD遇到的坑(三)

Form表单验证中的坑

使用rule的type='number'验证输入的是否为数字,当输入完后将输入项置空发现会出现两条提示信息

<Form onSubmit={(e) => this.handleSubmit(e)}>
    <Form.Item {...formItemLayout} label="uid">
         {getFieldDecorator("uid",{
              rules: [{
                 required: true, 
                 message: "请输入uid!"
              },{
                type: 'number', 
                message: "请输入数字!"
             }],
          })(
               <Input placeholder="搜索uid" />
          )}
    </Form.Item>
    <Form.Item wrapperCol={{ span: 12, offset: 5 }}>
          <Button type="primary" htmlType="submit">
             Submit
          </Button>
    </Form.Item>
</Form>
表单验证.png

改用pattern后则正常:

<Form onSubmit={(e) => this.handleSubmit(e)}>
    <Form.Item {...formItemLayout} label="uid">
         {getFieldDecorator("uid",{
              rules: [{
                 required: true, 
                 message: "请输入uid!"
              },{
                pattern: /^[0-9]+$/, 
                message: "请输入数字!"
             }],
          })(
               <Input placeholder="搜索uid" />
          )}
    </Form.Item>
    <Form.Item wrapperCol={{ span: 12, offset: 5 }}>
          <Button type="primary" htmlType="submit">
             Submit
          </Button>
    </Form.Item>
</Form>
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。