Jelajahi Sumber

Select: fix icon and input click (#1253)

杨奕 8 tahun lalu
induk
melakukan
24c5ff8c4c
1 mengubah file dengan 10 tambahan dan 0 penghapusan
  1. 10 0
      packages/select/src/select.vue

+ 10 - 0
packages/select/src/select.vue

@@ -40,6 +40,8 @@
       :disabled="disabled"
       :readonly="!filterable || multiple"
       @focus="toggleMenu"
+      @click="toggleMenu"
+      @mousedown.native="handleMouseDown"
       @keyup.native="debouncedOnInputChange"
       @keydown.native.down.prevent="navigateOptions('next')"
       @keydown.native.up.prevent="navigateOptions('prev')"
@@ -326,6 +328,14 @@
     },
 
     methods: {
+      handleMouseDown(event) {
+        if (event.target.tagName !== 'INPUT') return;
+        if (this.visible) {
+          this.handleClose();
+          event.preventDefault();
+        }
+      },
+
       doDestroy() {
         this.$refs.popper.doDestroy();
       },