Commit 526a142cac0614619804477a8b73a2a0f9c834d0

Authored by Sergio Crisostomo
1 parent 3537176f

add click outside event emitter to dropdown

Showing 1 changed file with 5 additions and 1 deletions   Show diff stats
src/components/dropdown/dropdown.vue
1 <template> 1 <template>
2 <div 2 <div
3 :class="[prefixCls]" 3 :class="[prefixCls]"
4 - v-clickoutside="handleClose" 4 + v-clickoutside="onClickoutside"
5 @mouseenter="handleMouseenter" 5 @mouseenter="handleMouseenter"
6 @mouseleave="handleMouseleave"> 6 @mouseleave="handleMouseleave">
7 <div :class="[prefixCls + '-rel']" ref="reference" @click="handleClick"><slot></slot></div> 7 <div :class="[prefixCls + '-rel']" ref="reference" @click="handleClick"><slot></slot></div>
@@ -111,6 +111,10 @@ @@ -111,6 +111,10 @@
111 }, 150); 111 }, 150);
112 } 112 }
113 }, 113 },
  114 + onClickoutside (e) {
  115 + this.handleClose();
  116 + if (this.currentVisible) this.$emit('on-clickoutside', e);
  117 + },
114 handleClose () { 118 handleClose () {
115 if (this.trigger === 'custom') return false; 119 if (this.trigger === 'custom') return false;
116 if (this.trigger !== 'click') { 120 if (this.trigger !== 'click') {