【发布时间】:2018-02-12 19:20:52
【问题描述】:
我在 vuejs 中使用 dropdown 菜单组件来制作正常的下拉菜单。
我的代码是 dropdown 组件是:
<template>
<span class="dropdown" :class="{shown: state}">
<a href="#" @click.prevent="toggleDropdown" class="dropdown-toggle">toggle menu</a>
<div class="dropdown-menu" v-show="state">
<ul class="list-unstyled">
<slot></slot>
</ul>
</div>
</transition>
</span>
</template>
<script>
export default {
name: 'dropdown',
data () {
return {
state: false
}
},
methods: {
toggleDropdown (e) {
this.state = !this.state;
}
}
}
</script>
现在我正在使用模板中的以下代码在我的VUE 应用程序中的各个位置导入dropdown 组件
<dropdown>
<li>
Action
</li>
</dropdown>
现在效果很好,但我希望同时只有一个下拉菜单处于活动状态。
我做了一些研究,发现我可以使用像https://github.com/davidnotplay/vue-my-dropdown 这样的插件,但我不想使用它。同样,我还研究了上述示例的工作原理,但我想以这样一种方式实现此下拉功能,即我的dropdown 组件将处理与下拉相关的所有事件。 那么您能帮我实现这一目标吗?
【问题讨论】:
标签: javascript drop-down-menu vue.js vuejs2 vue-component