现有Antd Form表单项:
<FormItem {...formItemLayout} label={"客户简称"} validateStatus={validCustShortNameStatus ? "error" : "success"} help={validCustShortNameStatus ? "请输入客户简称" : ""}>
{getFieldDecorator("custShortName", {
rules: [{ required: true, message: "请输入客户简称" }],
initialValue: ""
})(
<Input onChange={this.handleCustShortNameChange} data-key="custShortName" />
)}
</FormItem>
有自定义验证方法:
handleCustShortNameChange = (value) => {
console.log('value?', value, this.props.form.getFieldsValue(), value.target.value)
this.props.validCustShortName(value)
}
打印发现值是这样的(第1个是value,是一个Proxy对象,可以看到,我们看不太懂值在哪里,其实它是一个html元素,我们取值尊早e.target的方式,即value.target.value 取data-key的值就是value.target['data-key'] 以此类推):
<input type="text" data-key="custShortName" value="1" id="custShortName" data-__meta="[object Object]" class="ant-input ant-input-lg">