Vee Validate настраиваемое правило required_if не вычисляет required - PullRequest
1 голос
/ 06 августа 2020

Я использую Vee-validate 2.2.3 в проекте и пытаюсь использовать настраиваемое правило required_if. Проблема в том, что он не меняет обязательный флаг на ValidationProvider на true, он всегда false, поэтому пользователь не может видеть, что какое-то поле стало обязательным. В то же время - проверка работает хорошо, и сообщения об ошибках при необходимости отображаются \ скрываются.

Примеры кода:

this.$validator.extend('customRequiredIf', customRequiredIf, {
    hasTarget: true,
    computesRequired: true,
});



const customRequiredIf = (value: any, [target, operation, operationValue] : any) => {
        let conditional = operationValue.length !== 0;
        if (conditional) {
            return {
                valid: value !== undefined && value !== null && value !== "",
                data: {
                    required: value !== undefined && value !== null && value !== "",
                }
            };
        }
        return { 
            valid: true,
            data: {
                required: true
            }
        };
    };

Что я делаю неправильно?

Small демо (хотя я всегда возвращал «required: true», флаг «required» - всегда «false»): https://codesandbox.io/s/vue-template-4vd30?file= / src / App. vue

...