多语言
Obj-Validation 的内置验证函数的错误消息是英文形式的。目前多语言内置只支持英文和中文。但是用户可以自行设置其他语言。
切换语言
Obj-Validation 的默认当前语言是英文。
切换到中文
ObjValidation.i18n.setCurrLocale('zh')
添加语言支持
Obj-Validation 的多语言字典是一个很简单的 Key/Value 形式的 JavaScript 对象,如示例
// zh.js
export default {
depends: '{0}依赖{1},请先填写{1}',
uniq: '输入的内容已存在,此项必须唯一',
email: '请输入有效的电子邮件地址'
}
添加一个语言
import zhLocales from './zh'
ObjValidation.i18n.addLocale('zh', zhLocales)
ObjValidation.i18n.addLocale('zh', {
uniq: '你输入的值已被占用,请输入其他值'
})
你可以多次添加同一个语言,Obj-Validation 在添加语言字典的策略是合并而不是覆盖。因此,多次添加,不同 Key 的值都会保留下来,相同 Key 的值最后一个添加的会被保留下来。
使用外部的多语言 API 实现多语言
在下面的示例中,假定 i18n() 实现了多语言功能
import i18n from 'i18n'
let rules = {
name: {
required: {
value: true
message: i18n('User name required')
},
length: 20
}
}