Commit 2cf9c4e7 authored by Hoxton Lau's avatar Hoxton Lau Committed by 杨奕

Form-item: fix "required" attribute is not effective for validation

parent 0efb4a58
...@@ -148,7 +148,7 @@ ...@@ -148,7 +148,7 @@
methods: { methods: {
validate(trigger, callback = noop) { validate(trigger, callback = noop) {
var rules = this.getFilteredRule(trigger); var rules = this.getFilteredRule(trigger);
if (!rules || rules.length === 0) { if ((!rules || rules.length === 0) && !this._props.hasOwnProperty('required')) {
callback(); callback();
return true; return true;
} }
...@@ -194,10 +194,11 @@ ...@@ -194,10 +194,11 @@
getRules() { getRules() {
var formRules = this.form.rules; var formRules = this.form.rules;
var selfRules = this.rules; var selfRules = this.rules;
var requiredRule = this._props.hasOwnProperty('required') ? { required: !!this.required } : [];
formRules = formRules ? formRules[this.prop] : []; formRules = formRules ? formRules[this.prop] : [];
return [].concat(selfRules || formRules || []); return [].concat(selfRules || formRules || []).concat(requiredRule);
}, },
getFilteredRule(trigger) { getFilteredRule(trigger) {
var rules = this.getRules(); var rules = this.getRules();
...@@ -232,7 +233,7 @@ ...@@ -232,7 +233,7 @@
let rules = this.getRules(); let rules = this.getRules();
if (rules.length) { if (rules.length || this._props.hasOwnProperty('required')) {
this.$on('el.form.blur', this.onFieldBlur); this.$on('el.form.blur', this.onFieldBlur);
this.$on('el.form.change', this.onFieldChange); this.$on('el.form.change', this.onFieldChange);
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment