Vee Validate 3.0 - свойство или метод "required" не определены в экземпляре, но на них ссылаются во время рендеринга - PullRequest
1 голос
/ 10 ноября 2019

Я чувствую, что уже почти справился с Vee Validate 3.0, но продолжаю получать следующее предупреждение во время выполнения:

Property or method "required" is not defined on the instance but referenced during render

Я использую проверку регулярных выражений, которая содержит каналы, поэтому янужно отправить как объект, а не как строку.

Это мой код:

<ValidationProvider :rules="{ required, regex: /^(0[1-9]|1[0-2])\/\d{4}$/ }" name="exp" v-slot="{ errors }">
  <input name="exp" v-model="payment.exp" placeholder="Expiry MM/YYYY" class="form-control"/>
  <span class="warning">{{ errors[0] }}</span>
</ValidationProvider>

Все компилируется без предупреждения и проверки корректно работают во время выполнения, но что с предупреждением наконсоль?

Кто-нибудь знает, что мне нужно сделать, чтобы удалить ее?

1 Ответ

0 голосов
/ 10 ноября 2019

Я опущу регулярное выражение для краткости. Это не очень актуальная проблема, вы привязываете правила к объекту: { required }

Что теперь оценивается required? поскольку в вашем компоненте не определено required, вы получите эту ошибку, как и любой неопределенный реактивный объект в шаблоне.

Я предполагаю, что вы хотите, чтобы ваше поле было обязательным, поэтому вам нужночтобы ввести значение для клавиши required:

<ValidationProvider :rules="{ required: true }" name="exp" v-slot="{ errors }">
  <input name="exp" v-model="payment.exp" placeholder="Expiry MM/YYYY" class="form-control"/>
  <span class="warning">{{ errors[0] }}</span>
</ValidationProvider>
...