el-form 中的rules规则校验validate不起作用的可能原因
错误代码:
repeatPassword : {
required: true,
trigger: 'blur',
validator: (rule, value, callback) => {
if (value) {
if (value !== this.model.register.password) {
callback(new Error(this.$t('userinfo.inconsistent'))) // '两次填写密码 不一致'
} else {
}
} else {
callback(new Error(this.$t('userinfo.confirm-none'))) // 确认密码 未填写
}
}
}
正确代码:
repeatPassword = {
required: true,
trigger: 'blur',
validator: (rule, value, callback) => {
if (value) {
if (value !== this.model.register.password) {
callback(new Error(this.$t('userinfo.inconsistent'))) // '两次填写密码 不一致'
} else {
callback()
}
} else {
callback(new Error(this.$t('userinfo.confirm-none'))) // 确认密码 未填写
}
}
}
每一步判断校验后都需要callback()