Vee 验证在 vue 设置后获取以前的值
Vee validate get previous value after vue set
我想通过代码更新 v-model 值并验证该字段。所以我使用 vue.set 方法更新值,然后调用 $validator.validate。
我的代码是这样的。
Vue.set(model,property, value);
vm.$validator.validate(property).then(function (valid) {
if (!valid) {
vm.$validator.flag(property, {
touched: true,
dirty: true
});
}
});
我的验证规则代码是这样的:
Validator.extend("val_compulsory", {
getMessage(field, args) {
return args[0];
},
validate(value) {
return {
valid: !!value,
data: {
required: true
}
};
}
}, { computesRequired: true });
但在 val_compulsory 验证器中,我总是得到 vue.set 之前的值。在 vue.set?
之后,有没有办法在 vee-validator 验证方法中获取最新值?
试试这个:
Vue.set(model,property, value);
vm.$nextTick(function() {
vm.$validator.validate(property).then(function (valid) {
if (!valid) {
vm.$validator.flag(property, {
touched: true,
dirty: true
});
}
});
});
我想通过代码更新 v-model 值并验证该字段。所以我使用 vue.set 方法更新值,然后调用 $validator.validate。 我的代码是这样的。
Vue.set(model,property, value);
vm.$validator.validate(property).then(function (valid) {
if (!valid) {
vm.$validator.flag(property, {
touched: true,
dirty: true
});
}
});
我的验证规则代码是这样的:
Validator.extend("val_compulsory", {
getMessage(field, args) {
return args[0];
},
validate(value) {
return {
valid: !!value,
data: {
required: true
}
};
}
}, { computesRequired: true });
但在 val_compulsory 验证器中,我总是得到 vue.set 之前的值。在 vue.set?
之后,有没有办法在 vee-validator 验证方法中获取最新值?试试这个:
Vue.set(model,property, value);
vm.$nextTick(function() {
vm.$validator.validate(property).then(function (valid) {
if (!valid) {
vm.$validator.flag(property, {
touched: true,
dirty: true
});
}
});
});