vee-validate 中文配置报错及自定义规则 报错.updateDictionary/.addlocale is not a function

时间:2021-03-07 20:37:35

原因由于vee-validate版本更新的问题导致的。

1. 原因分析:

a 新版vee-validate的语言配置方法变化了, Validator.localize('zh_CN', zh_CN)

第一个参数是dictionary的定义语言的方法名,例如下图的‘zh_CN' ; 第二个参数是引用的语言js, 本文中是中文,引自node_modules下的vee-validate/dist/locale/zh_CN.js.

参见官网地址: http://vee-validate.logaretm.com/localization.html#localized-files

 

b. 自定义规则的.extend()方法变化

 e.g.:Validator.extend('truthy', { getMessage: field => 'The ' + field + ' value is not truthy.', validate: value => !! value });

注意:两个方法的使用:

getMessage(field, args) {

   // will be added to default English messages.

   // Returns a message.

},

validate(value, args) {

  // Returns a Boolean or a Promise.

}

参见官网地址:http://vee-validate.logaretm.com/validation.html#custom-rules

2. 解决方法如下截图:

validate,js

vee-validate 中文配置报错及自定义规则 报错.updateDictionary/.addlocale is not a function

 

自定义规则, customValidate,js

vee-validate 中文配置报错及自定义规则 报错.updateDictionary/.addlocale is not a function