// 在执行完相应的方法,立即触发移除校验
this.$nextTick( ()=> {
    this.$refs['form'].clearValidate(['name']);
     this.$refs['form'].clearValidate(['age']);
   })

知识点:

但是可能提示语清不掉:planB

let _field = this.$refs["ruleFormOS"].fields;
      console.log("_field", _field);
      _field.map((i) => {
        if (i.prop === "imageUrl") {
          //通过prop属性值相同来判断是哪个输入框,比如:要移除prop为'imageUrl'
          i.resetField();
          return false;
        }
      });

此时错误提示语就不会出现,动态清除imagesUrlr值会出现效验的问题(提交的时候),当然,有人会问:“那这样清空了,提交时候就不会进行效验了?”,其实提交的时候,调下validate这个验证方法还是会进行效验的。那就自己再处理一下了。

 onSubmit() {
      this.$refs["ruleFormOS"].validate((valid, object) => {
        console.log("valid", valid);
        let osVersionListFlag = this.form.osVersionList.every(
          (value) => value !== ""
        );
        let { system_type, name, imageUrl } = this.form;
        let myValid = osVersionListFlag && system_type && name && imageUrl;
        if (valid || myValid) {
          switch (this.form.operate) {
            case "add":
              this.appendNode();
              break;
            case "edit":
              this.editNode();
              break;
            default:
              break;
          }
        } else {
          console.log("error submit!!");
          return false;
        }
      });
    },

后续跟进中。。。



链接:https://juejin.cn/post/6844903779926556686
 

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐