这是我的 .vue 组件文件,我没有在其中使用 Vue.use()
来安装 vee-validate
验证包。如文档中所述,该模块将向 errors
对象注入(inject)一个 data
对象。
但我确实收到错误 _vm.errors is undefined
。我不确定我是否正确实例化它。
另外,import Vue from 'Vue'
和 Vue.use(VeeValidate)
是否会“使用”vee-validate 仅针对此组件?(这是我想要的)。
<template>
<input class="form-control" name="name" placeholder="Name" type="text" v-model="player.name" v-validate data-vv-rules="alpha|min:2|max:50" :class="{'input': true, 'is-danger': errors.has('name') }">
</template>
<script>
import Vue from 'Vue';
import VeeValidate from 'vee-validate';
Vue.use(VeeValidate);
export default {
data() {
return {
// errors: '',
showForm: false,
player: null
}
}
}
</script>
最佳答案
我有一个类似的问题,但我正在使用这些版本:
"vee-validate": "^2.0.0-rc.21",
"vue": "^2.5.2",
在这种情况下,您可以使用以下方法访问错误集合: this.$validator.error
查看 vee-validate 的规范:
http://vee-validate.logaretm.com/api.html#error-bag(404!)
新链接:
http://vee-validate.logaretm.com/v2/api/errorbag.html
向下滚动,你会看到这个:
验证器
验证器会自 Action 为 $validator 注入(inject) Vue 实例。然而,它也是一个独立的类,可以单独用于以编程方式验证值。构造函数可以选择使用一个对象将每个字段名称映射到一组验证。
关于vue-component - vee 验证错误对象 - _vm.errors 未定义,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/41162865/