Как использовать условный оператор внутри валидаций в vuelidate?

Я только что установил vuelidate и создал помощник, который проверяет, равно ли значение phone no. ссылка

import { helpers } from 'vuelidate/lib/validators';
const phone = helpers.regex('alpha', /^(09)[0-9]{9}/);

Моя цель: поле ввода должно принимать только email или phone_no, я пробовал решение (я) ниже, но ни одно из них не работает.

Сол. 1

validations: { username: { valid: phone or email }}

Сол. 2

validations: { username: { valid: phone || email }}


Кто-нибудь знает, как этого добиться?


person Ιησούς του ναυή    schedule 26.03.2020    source источник


Ответы (1)


Ох, я нашел решение!

Сначала вам нужно импортировать or (ваш случай) или and

import { email, or, and } from 'vuelidate/lib/validators';

Наконец, ваша ошибка, вы должны использовать это как функцию. Вместо приведенных выше решений должны быть эти коды ниже.

validations: { username: { valid: or(email, phone) }}
person gecko    schedule 26.03.2020