Как локализовать сообщения об ошибках проверки формы Nuxt с помощью vee-validate
Я борюсь с локализацией проверки формы в NUXT.jS, используя vee-validate
. В официальных документах vee-validate очень мало документации о NUXT. Интересно, могу ли я локализовать сообщения об ошибках с помощью vee-validate.
Все работает нормально. Плагин i18n, плагин vee-validate. Но я не могу соединить эти два вместе.
Мой Vee Validate
установка
import { extend } from "vee-validate";
import { required, alpha, email } from "vee-validate/dist/rules";
extend("required", {
...required,
message: "This field is required"
});
extend("alpha", {
...alpha,
message: "This field must only contain alphabetic characters"
});
extend("email", {
...alpha,
message: "This email field must contain a valid email address"
});
Я пробовал это из официальной документации, но пока ничего.
2 ответа
Использовать configure
из vee-validate
import { extend, configure } from "vee-validate";
import { required, email, min } from "vee-validate/dist/rules";
import { i18n } from "./i18n";
configure({
defaultMessage: (field, values) => {
// override the field name.
values._field_ = i18n.t(`fields.${field}`);
return i18n.t(`validation.${values._rule_}`, values);
}
});
extend("required", {
...required,
message: "This field is required"
});
extend("alpha", {
...alpha,
message: "This field must only contain alphabetic characters"
});
extend("email", {
...alpha,
message: "This email field must contain a valid email address"
});
Если вам нужна динамическая локализация, я написал об этом статью. Вы можете прочитать это здесь.