Vue.js Vee验证如何在元素范围内进行验证

Pat*_*han 3 validation vue.js vuejs2 vee-validate

我在项目中使用VeeValidate插件进行验证。

这是我要验证的表格。

在此处输入图片说明

如果要验证保存按钮上的所有字段

this.$validator.validateAll().then(result => {
    if (result) {

    }
    // alert("Correct them errors!");
}
Run Code Online (Sandbox Code Playgroud)

这种功能会有所帮助。

但是,如果我想在添加按钮上验证大学和课程,该怎么办 而不是全部验证,有没有一种方法可以只传递两个字段名称(uni和cou)进行验证?

gyp*_*der 5

您可以使用data-vv-scopevee-validate来实现这一功能。这是可以做到的

<input 
      id="university" 
      name="university" type="text"
      v-model="<model_of_university>"
      data-vv-rules="required" 
      data-vv-as="University"
      data-vv-scope="university" required/>

<input 
      id="course" 
      name="course" type="text"
      v-model="<model_of_course>"
      data-vv-rules="required" 
      data-vv-as="Course"
      data-vv-scope="university" required/>
Run Code Online (Sandbox Code Playgroud)

现在,为了验证这些字段,只需按以下方法传递data-vv-scope值即可validateAll

this.$validator.validateAll('university').then((result) => {
 if (result) {

    }
    // alert("Correct them errors!");
}
Run Code Online (Sandbox Code Playgroud)