소스 검색

下拉框 值来源 设置动态参数

linweizeng 2 년 전
부모
커밋
22d7b4a361
1개의 변경된 파일10개의 추가작업 그리고 1개의 파일을 삭제
  1. 10 1
      src/business/platform/form/formrender/dynamic-form/dynamic-form-field.vue

+ 10 - 1
src/business/platform/form/formrender/dynamic-form/dynamic-form-field.vue

@@ -189,6 +189,7 @@
                 :filterable="allowCreate"
                 :filterable="allowCreate"
                 :allow-create="allowCreate"
                 :allow-create="allowCreate"
                 v-on="$listeners"
                 v-on="$listeners"
+                @change="selectLinkageChange"
             >
             >
                 <el-option v-for="o in dataOptions" :key="o.val" :label="o.label" :value="o.val" />
                 <el-option v-for="o in dataOptions" :key="o.val" :label="o.label" :value="o.val" />
             </el-select>
             </el-select>
@@ -663,7 +664,8 @@
                 selectModel: [],
                 selectModel: [],
                 watchKey: false,
                 watchKey: false,
                 inputKey: '',
                 inputKey: '',
-                dict_add: false
+                dict_add: false,
+                selectDataResult: []
             }
             }
         },
         },
         computed: {
         computed: {
@@ -1032,6 +1034,7 @@
                 queryDataTable(this.getValuesourceParams(template, this.dataTemplate)).then(resp => {
                 queryDataTable(this.getValuesourceParams(template, this.dataTemplate)).then(resp => {
                     const data = resp.data || {}
                     const data = resp.data || {}
                     const dataResult = data.dataResult || []
                     const dataResult = data.dataResult || []
+                    this.selectDataResult = dataResult
                     const options = dataResult.map(item => {
                     const options = dataResult.map(item => {
                         return {
                         return {
                             val: item[this.valueKey],
                             val: item[this.valueKey],
@@ -1069,6 +1072,12 @@
                     }
                     }
                 }
                 }
             },
             },
+            selectLinkageChange(value){
+                let dataValue = this.selectDataResult.find(item => item.id_ === value)
+                if(dataValue){
+                    this.handleLinkageData(value, dataValue)
+                }
+            },
             // 联动数据
             // 联动数据
             handleLinkageData(value, data) {
             handleLinkageData(value, data) {
                 if (this.multipleString) {
                 if (this.multipleString) {