feat(Form): add submit、failed event

This commit is contained in:
陈嘉涵
2020-02-07 15:51:58 +08:00
parent 9d8cf7f8d3
commit 70ed34aa24
3 changed files with 26 additions and 6 deletions
+3 -1
View File
@@ -42,7 +42,9 @@ export default {
},
methods: {
onSubmit() {},
onSubmit(values) {
console.log(values);
},
},
};
</script>
+18 -2
View File
@@ -17,12 +17,28 @@ export default createComponent({
},
methods: {
// @exposed-api
validate() {
return this.fields.map(item => item.validate()).every(item => item);
},
getFormData() {
return this.fields.reduce((form, field) => {
form[field.name] = field.value;
return form;
}, {});
},
onSubmit(event) {
event.preventDefault();
const results = this.fields.map(item => item.validate());
const valid = this.validate();
console.log(results);
if (valid) {
this.$emit('submit', this.getFormData());
} else {
this.$emit('failed');
}
},
},