Vee-validate 和 Vue-I18n 本地化不起作用
Posted
技术标签:
【中文标题】Vee-validate 和 Vue-I18n 本地化不起作用【英文标题】:Vee-validate and Vue-I18n localization not working 【发布时间】:2021-08-03 21:49:58 【问题描述】:我正在使用使用
“vee-validate”:“3.0.0”, “vue”:“2.6.10”, “vue-i18n”:“8.14.0”我正在尝试更改自定义规则的 vee-validate 消息中的语言。验证本地化不会改变。我做错了什么?
这是我的代码沙箱:
https://codesandbox.io/s/veevalidate-30-vuei18n-integration-forked-o3frf?file=/src/components/Example.vue
正如我们所见,我可以更改 i18n.locale,但它不会更新来自 vee-validate V3.0.0 的消息
感谢您的帮助!
【问题讨论】:
【参考方案1】:您必须将回调传递给自定义消息,而不是翻译后的值,因此当语言环境更改并生成新消息时会调用它。
vee-validate.js
extend("atLeastOneDigit",
validate(value)
var digitPattern = /\d+/g;
return value.match(digitPattern) != null;
,
message: () => i18n.t("pwDigitError")
);
【讨论】:
以上是关于Vee-validate 和 Vue-I18n 本地化不起作用的主要内容,如果未能解决你的问题,请参考以下文章