// 校验角色名字唯一 getName = (rule, value, callback) => { const { dispatch } = this.props; const { recodes } = this.state; if (value) { //这里调后端接口 dispatch({ type: 'roleModel/getName', payload: { roleId: recodes ? recodes.roleId : '', roleName: value } }) .then((xhr)=>{ if(!xhr){ callback('该角色名称已存在');//抛发异常信息 }else{ callback()//必须返回,联通表单err } }) }else{ callback()//返回联通必填校验 } } <FormItem {...formItemLayout} label="角色名称" > {form.getFieldDecorator('roleNames', { initialValue: recodes?recodes.roleName:'', rules: [ { required: true, message: '请填写角色名称' }, { max: 30, message: '最长可输入30个字符' }, { validator: this.getName } ] })( <Input /> )} </FormItem>