У меня есть кнопка для загрузки файлов или добавления некоторого текста
После загрузки он нажал data () prop
Как я могу проверить эту опору, если у них нет ввода
Я найденЕдинственное решение - сделать часы для данных реквизита.и установить валидацию в
Может быть, существует более красивый способ?
Я пробую validator.verify () - но он не отправляет ошибку в основной errorBag из validateAll
Это пример
<div id="app">
<testc></testc>
</div>
<script type="text/x-template" id="test">
<div>
<input type="text" v-validate="'required'" name="test_vee">
{{errors.first('test_vee')}}
<hr>
<button @click="addRow">Add</button>
<input type="text" v-model="inputValue" name="test_input"/>
<hr>
{{rows}}
<hr>
{{errors.first('rows')}}
<button @click="validateForm">Validate</button>
</div>
</script>
и сценария
Vue.component('testc', {
template: '#test',
data() {
return {
inputValue: '',
rows: []
}
},
watch: {
rows: {
handler: function(newVal, oldVal) {
this.$validator.errors.remove('rows');
if (this.rows.length < 2) {
this.$validator.errors.add({
id: 'rows',
field: 'rows',
msg: 'Need 2 rows!',
});
}
}
}
},
methods: {
addRow: function() {
this.rows.push(this.inputValue);
this.inputValue = '';
},
validateForm: function(){
this.$validator.validateAll();
}
}
});
Vue.use(VeeValidate);
new Vue({
el: '#app'
})
https://codepen.io/gelid/pen/YBajER
Первый вход в примере: проверка по умолчанию - все в порядке
Второй ввод: для добавления элементов - проверка не требуется или имеет самопроверку (например, не пусто)
В данных компонента у меня есть строки проп - это необходимо проверить перед Ajax-запросом для сохранения данных