更改'date_format','之后'或'之前'的vee验证错误消息
问题描述:
我试图更改由使用momement.js库的函数的vee-validate生成的错误消息。我可以更改其他验证规则的消息,例如'required',但不能'date_format','before'或'after'。这是因为这些规则使用了moment.js库吗?有什么方法可以更改这些错误消息吗?更改'date_format','之后'或'之前'的vee验证错误消息
Vue.use(VeeValidate,{
fieldsBagName: 'vFields',
dictionary: {
en: {
messages: {
required: 'Your field is empty', // messages can be strings as well.
date_format: 'wrong format for date',
after:"date is too old",
}
}
}
});
new Vue({
methods: {
validate() {
this.$validator.validateAll().then(() => {
alert('Is valid')
}).catch(() => {
alert('Is not valid')
})
}
}
}).$mount('#app')
答
我一直在使用我的组件内部下面的代码来实现这一点:
import VeeValidate from 'vee-validate'
const dictionary = {
en: {
messages: {
after: (field, args) => `The ${field} must be greater than ${moment(args, moment.defaultFormat).format('YYYY-MM-DD HH:mm')}.`,
date_format: (field, args) => `The ${field} is invalid.`
}
}
}
VeeValidate.Validator.updateDictionary(dictionary);