Я использую Vuetify, и у меня есть форма, где я использую VeeValidate для проверки формы ... Когда я использую это:
this.$validator.validateAll().then((result) => {
console.log("result form", result);
//result ? this.onSubmit() : scrollTo(0, 250);
});
Всегда возвращает true, даже если проверка в моем поле ввода не является 't valid ... Вход выглядит так:
<v-textarea
filled
name="string"
:label="placeholderText"
auto-grow
single-line
:placeholder="placeholderText"
v-model="answer"
:required="isRequired"
v-validate:computedProp="checkRequired"
:error-messages="errors.collect('string')"
data-vv-name="string"
:hint="hintText"
@blur="updateAnswer"
></v-textarea>
Код для компонента ввода:
export default {
$_veeValidate: {
validator: 'new'
},
name: 'String',
props: {
placeholderText: {
default: 'Add a value'
},
hintText: {
default: 'Add a value'
},
isRequired: {
default: true
}
},
data: () => ({
answer: ''
}),
computed: {
checkRequired() {
return this.isRequired ? 'required' : ''
}
},
methods: {
updateAnswer() {
this.$validator.validateAll();
this.$emit('updateAnswer', this.answer);
}
}
}
Я вызываю это. $ validator.validateAll() в другом компоненте ... Компонент ввода является автономным компонентом ... У меня есть все обертка в теге формы и запуск функции validate для отправки