fix: 修复#6321
This commit is contained in:
parent
e2ef9d91ea
commit
537575228f
1 changed files with 21 additions and 19 deletions
|
@ -178,33 +178,35 @@
|
||||||
return rules.filter(rule => !rule.trigger || rule.trigger.indexOf(trigger) !== -1);
|
return rules.filter(rule => !rule.trigger || rule.trigger.indexOf(trigger) !== -1);
|
||||||
},
|
},
|
||||||
validate(trigger, callback = function () {}) {
|
validate(trigger, callback = function () {}) {
|
||||||
let rules = this.getFilteredRule(trigger);
|
this.$nextTick(() => {
|
||||||
if (!rules || rules.length === 0) {
|
let rules = this.getFilteredRule(trigger);
|
||||||
if (!this.required) {
|
if (!rules || rules.length === 0) {
|
||||||
callback();
|
if (!this.required) {
|
||||||
return true;
|
callback();
|
||||||
}else {
|
return true;
|
||||||
rules = [{required: true}];
|
}else {
|
||||||
|
rules = [{required: true}];
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
this.validateState = 'validating';
|
this.validateState = 'validating';
|
||||||
|
|
||||||
let descriptor = {};
|
let descriptor = {};
|
||||||
descriptor[this.prop] = rules;
|
descriptor[this.prop] = rules;
|
||||||
|
|
||||||
const validator = new AsyncValidator(descriptor);
|
const validator = new AsyncValidator(descriptor);
|
||||||
let model = {};
|
let model = {};
|
||||||
|
|
||||||
model[this.prop] = this.fieldValue;
|
model[this.prop] = this.fieldValue;
|
||||||
|
|
||||||
validator.validate(model, { firstFields: true }, errors => {
|
validator.validate(model, { firstFields: true }, errors => {
|
||||||
this.validateState = !errors ? 'success' : 'error';
|
this.validateState = !errors ? 'success' : 'error';
|
||||||
this.validateMessage = errors ? errors[0].message : '';
|
this.validateMessage = errors ? errors[0].message : '';
|
||||||
|
|
||||||
callback(this.validateMessage);
|
callback(this.validateMessage);
|
||||||
|
});
|
||||||
|
this.validateDisabled = false;
|
||||||
});
|
});
|
||||||
this.validateDisabled = false;
|
|
||||||
},
|
},
|
||||||
resetField () {
|
resetField () {
|
||||||
this.validateState = '';
|
this.validateState = '';
|
||||||
|
|
Loading…
Add table
Reference in a new issue