fix dropdown menu click

pull/395/head
baiyaaaaa 2016-10-13 13:54:02 +08:00 committed by cinwell.li
parent 2f41d86d2e
commit d87cfd7ff7
4 changed files with 20 additions and 15 deletions

View File

@ -2,7 +2,7 @@
### 1.0.0-rc.7
*2016-XX-XX*
*2016-10-13*
- Upload 新增 Data 属性支持额外数据的传输
- DatePicker 修复 `$t` 报错

View File

@ -1,8 +1,18 @@
<template>
<li class="el-dropdown-item"><slot></slot></li>
<li class="el-dropdown-item" @click="handleClick"><slot></slot></li>
</template>
<script>
import emitter from 'element-ui/src/mixins/emitter';
export default {
name: 'ElDropdownItem'
name: 'ElDropdownItem',
mixins: [emitter],
methods: {
handleClick(e) {
this.dispatch('ElDropdownMenu', 'visible', [false]);
}
}
};
</script>

View File

@ -1,8 +1,8 @@
<template>
<transition name="md-fade-bottom" @after-leave="doDestroy">
<ul class="el-dropdown__menu" v-show="showPopper">
<slot></slot>
</ul>
<ul class="el-dropdown__menu" v-show="showPopper">
<slot></slot>
</ul>
</transition>
</template>
<script>

View File

@ -66,15 +66,10 @@
triggerElm.addEventListener('mouseenter', show);
triggerElm.addEventListener('mouseleave', hide);
let dropdown = this.$slots.dropdown[0];
let insertHook = dropdown.data.hook.insert;
dropdown.data.hook.insert = (vnode) => {
insertHook(vnode);
this.$nextTick(_ => {
vnode.elm.addEventListener('mouseenter', show);
vnode.elm.addEventListener('mouseleave', hide);
});
};
let dropdownElm = this.$slots.dropdown[0].elm;
dropdownElm.addEventListener('mouseenter', show);
dropdownElm.addEventListener('mouseleave', hide);
} else if (trigger === 'click') {
triggerElm.addEventListener('click', handleClick);
}