Не удалось разрешить спецификатор модуля "vee-validate". Относительные ссылки должны начинаться с "/", "./" или "../" - PullRequest
0 голосов
/ 08 февраля 2020

Мы не используем npm, так как работаем над проектом Django, но мы используем VueJS в шаблонах. Теперь мы успешно используем vee-validate, и мне нужно переопределить сообщения об ошибках. Проблема в том, что я не могу найти другой путь, кроме importing, и я не могу сделать это таким образом.

Я пытался создать новый <script type="module">, который явно не работает:

Failed to resolve module specifier "vee-validate". Relative references must start with either "/", "./", or "../".

Это мой код.

<script src="https://unpkg.com/vee-validate@2.0.0-beta.25"></script>

<script type="module">
    import {localize} from 'vee-validate';

    localize({
        en: {
            messages: {
                required: 'xxxxxxxx',
                min: 'this field must have no less than {length} characters',
                max: (_, {length}) => `this field must have no more than ${length} characters`
            }
        }
    });
</script>

У вас есть идеи, как переопределить сообщения?

1 Ответ

1 голос
/ 08 февраля 2020

VeeValidate может отлично работать, включенный в <script> (как показано в документах )

После включения доступен глобальный объект VeeValidate. Это будет работать, если вы используете не бета версию (например, 2.0.9 ) (есть ли способ использовать old и beta версия?)

<script type="text/javascript">
VeeValidate.Validator.localize({
        en: {
            messages: {
                required: 'xxxxxxxx',
                min: 'this field must have no less than {length} characters',
                max: (_, {length}) => `this field must have no more than ${length} characters`
            }
        }
    });
</script>

К сожалению, в документах не так много примеров использования script, поэтому вы должны изучить API самостоятельно (просто выполните console.log(VeeValidate)). Работать с NPM версии будет проще на 100% ...

...