Browse Source

下拉框增加change事件

l1069030731 2 years ago
parent
commit
b8e4e2ab47
1 changed files with 13 additions and 1 deletions
  1. 13 1
      src/components/form-test/index.vue

+ 13 - 1
src/components/form-test/index.vue

@@ -58,6 +58,7 @@
               :filterable="value.filterable"
               :style="{ width: value.width || '100%' }"
               size="small"
+              @change="fn($event, value.change)"
             >
               <el-option v-for="item in value.data" :key="item[value.keyName]" :label="item[value.labelName]" :value="item[value.keyName]" />
             </el-select>
@@ -250,6 +251,13 @@ export default {
       type: Boolean,
       default: false,
     },
+    // 全局禁用
+    change: {
+      type: Function,
+      default: () => {
+        return {}
+      },
+    },
   },
   data() {
     return {
@@ -276,6 +284,9 @@ export default {
     },
   },
   methods: {
+    fn(val, _fn) {
+      _fn(val)
+    },
     // 初始化
     init() {
       this.insideConfig = {}
@@ -292,6 +303,7 @@ export default {
           span: value.span || this.span,
           clearable: value.clearable === undefined ? this.clearable : value.clearable,
           disabled: value.disabled === undefined ? this.disabled : value.disabled,
+          change: value.change === undefined ? this.change : value.change,
         }
         switch (this.insideConfig[key].type) {
           case 'input':
@@ -320,7 +332,7 @@ export default {
     },
     //初始化
     reset() {
-      this.$refs.form.resetFields();
+      this.$refs.form.resetFields()
     },
     // el-input标签处理
     inputHandle(key, value) {