如果你不想最后提交表单的时候才给出用户错误的提示,那么你可以这么写
这个例子是验证你输入的新密码是否一致的问题
<Row>
<Col span={24}>
<FormItem {...formItemLayout} label={'新密码'}>
{getFieldDecorator('newPassword', {
initialValue: currentUserdata.newPassword || '',
rules: [
{
required: true,
whitespace: true,
max: 11,
message: formatMessage({id: 'validation.userName.required'}),
}
],
})(<Input placeholder={"请输入新密码"}/>)}
</FormItem>
</Col>
</Row>
<Row>
<Col span={24}>
<FormItem {...formItemLayout} label={'确认新密码'}>
{getFieldDecorator('newPsw', {
initialValue: '',
rules: [
{
required: true,
whitespace: true,
max: 11,
message: formatMessage({id: 'validation.userName.required'}),
},
{validator: this.checkConfirm} //在这里加入验证规则
],
})(<Input placeholder={"请确认新密码"}/>)}
</FormItem>
</Col>
</Row>
checkConfirm = (rule, value, callback) => {
const {form} = this.props;
const newPsw = form.getFieldValue('newPassword');
if (newPsw != value) {
callback('新密码不一致!');
}
else {
callback();
}
}
这样就可以实现立即验证了