Commit f28e9536 by Mr. Lan

fix: 添加子表单功能。

parent 7a77a982
......@@ -80,7 +80,7 @@
:label="v.name"
min-width="250"
>
<template>
<template slot-scope="scope">
<genetate-form-item
:preview="preview"
:models.sync="models"
......@@ -90,6 +90,8 @@
:data="data"
:disabled="disabled"
:is-label="false"
:subform-index="scope.$index"
:subform-model="item.model"
@input-change="onSubformInputChange"
/>
</template>
......@@ -222,8 +224,9 @@ export default {
reset() {
this.$refs.generateForm.resetFields()
},
onSubformInputChange(value, field) {
this.$emit('on-change', field, value, this.models)
onSubformInputChange(value, field, index) {
console.log(value, field, index)
// this.$emit('on-change', field, value, this.models)
},
onInputChange(value, field) {
this.$emit('on-change', field, value, this.models)
......
......@@ -323,7 +323,7 @@ export default {
FileUpload
},
/* eslint-disable */
props: ['widget', 'models', 'rules', 'remote', 'data', 'disabled', 'preview', 'isLabel'],
props: ['widget', 'models', 'rules', 'remote', 'data', 'disabled', 'preview', 'isLabel', 'subformIndex', 'subformModel'],
data() {
return {
widgetLabelWidth: '',
......@@ -335,6 +335,14 @@ export default {
dataModel: {
deep: true,
handler(val) {
if (this.subformIndex !== undefined) {
this.models[this.subformModel][this.subformIndex][this.widget.model] = val
this.$emit('update:models', {
...this.models[this.subformModel][this.subformIndex],
[this.widget.model]: val
})
this.$emit('input-change', val, this.widget.model, this.subformIndex)
} else {
this.models[this.widget.model] = val
this.$emit('update:models', {
...this.models,
......@@ -342,6 +350,7 @@ export default {
})
this.$emit('input-change', val, this.widget.model)
}
}
},
models: {
deep: true,
......
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 sign in to comment