antd vue表单验证_antd-for-vue 表单验证失效 自定义表单验证使表单非空验证失效(其他验证失效)...

谁借莪1个温暖的怀抱¢ 2022-10-24 05:53 337阅读 0赞

## antd-for-vue 表单验证失效 自定义表单验证使表单非空验证失效(其他验证失效)

##### antd 的 表单校验方法包括 validateFields 和 validateFieldsAndScroll里面可以接收校验字段数组, options, 和一个回调函数

* 错误代码

```javascript

organizationId: {rules: [

{required: true, message: ‘请输入团支部!’},

{ validator: tpMemberCount ,trigger: ‘change’},

],

}, //导致失效的地方

//具体验证方法

let tpMemberCount = (rule, value, callback) => {

console.log(value)

try {

getAction(“/tp/tpOrganization/queryById”, {id: value}).then((res) => {

if (res.success) {

let MemberCount = res.result.tyNumber

console.log(MemberCount)

callback();

if (MemberCount < 1) {

callback(new Error(‘该支部下无团员,请重新选择。’));

}

} else {

this.$message.warning(“未查询到[“ + res.result.orgName + “]组织人数,请手动填入”);

callback();

}

});

} catch (err){

callback();

}

};

```

##### 当不设置自定义校验方法时 其他校验均有效

* 修改子自定义的校验方法

* 解决过程代码

```javascript

let tpMemberCount = (rule, value, callback) => {

console.log(1)

getAction(“/tp/tpOrganization/queryById”, {id: value}).then((res) => {

if (res.success) {

let MemberCount = res.result.tyNumber

if (MemberCount < 1) {

callback(new Error(‘该支部下无团员,请重新选择。’));

console.log(2)

}else {

callback()

}

// if (value == undefined && value == null && value == ‘’){

// callback(new Error(‘请选择请团支部’));

// console.log(3)

// }

} else {

this.$message.warning(“未查询到[“ + res.result.orgName + “]组织人数,请手动填入”);

callback();

console.log(4)

}

});

callback()

console.log(5)

};

```

![image-20200930170852454](C:\Users\milan\AppData\Roaming\Typora\typora-user-images\image-20200930170852454.png)

### 结论在自定义的验证的方法中出现了问题

* 修改后正确代码

  1. let tpMemberCount = (rule, value, callback) => \{
  2. getAction("/tp/tpOrganization/queryById", \{id: value\}).then((res) => \{
  3. if (res.success) \{
  4. let MemberCount = res.result.tyNumber
  5. if (MemberCount < 1) \{
  6. callback(new Error('该支部下无团员,请重新选择。'));
  7. \}else \{
  8. callback()
  9. \}
  10. \} else \{
  11. this.$message.warning("未查询到\[" + res.result.orgName + "\]组织人数,请手动填入");
  12. callback();
  13. \}
  14. \});
  15. \};

发表评论

表情:
评论列表 (有 0 条评论,337人围观)

还没有评论,来说两句吧...

相关阅读

    相关 验证

    java script验证表单时常用:   "^-\[0-9\]\\[1-9\]\[0-9\]\$"  //负整数    "^-?//d+$"    //整