Vue 下拉菜单组件化

本文详细介绍了如何在Vue中实现下拉菜单的组件化。从新建Vue项目开始,清理默认配置,创建组件文件,逐步进行组件化开发。通过在dropdown组件中设置框架、导入并注册组件,解决了下拉菜单的显示与隐藏问题,实现了点击事件和返回值功能。最后,将组件升级为全局组件,完成下拉菜单组件化的全过程。
摘要由CSDN通过智能技术生成

Vue 下拉菜单组件化开发

一、新建Vue项目

vue create dropdown

二、清理项目环境

1.删除多余默认组件,只留下App.vue文件

在这里插入图片描述

2.清理路由(router),保证routes为空
在这里插入图片描述

3.将App.vue文件下清除<router-view/> 如:

接下来的工作将会在App.vue文件为首页

三、组件化准备

1.在src文件夹下新建名为dropdown文件夹

2.在dropdown文件夹下新建三个vue文件

1). 	dropdown.vue        为一级盒子

2).    	dropdownMenu.vue    为二级盒子     

3).		dropdownItem.vue    为二级盒子内容

在这里插入图片描述

四、组件化开发

第一部分

1.先在dropdown.vue文件设计一个整体框架

<template>
  <div class="box">
    <div>
          <!--  此处使用具名插槽 一级按钮   放入按钮  -->
      <slot name="title"></slot>
    </div>
        <!--  此处使用具名插槽   二级盒子  放入需要下拉的内容 -->
    <slot name="dropdown"></slot>
  </div>
</template>

<script>
  export default {
    
    name: "dropdown"
  }
</script>

<style scoped>
  .box {
    
    display: inline-block; /* 行内块 */
    position: relative; /* 相对定位 */
  }
</style>

然后在App.vue导入模块

<template>
  <div id="app">
    <dropdown></dropdown>
  </div>
</template>

<script>
  import dropdown from './dropdown/dropdown'
  export default {
    
    name: 'App',
    components: {
    
      dropdown
    }
  }
</script>

<style>

#app {
    
  width: 200px;
  height: 300px;
  margin: 200px auto;
}
</style>

紧接着在dropdown标签下写入按钮

<template>
  <div id="app">
    <dropdown>
    <!-- 按钮样式自行修改 -->
      <button slot="title">按钮</button>
    </dropdown>
  </div>
</template>

运行如下:
在这里插入图片描述

第二部分

接下来是对dropdownMenu的操作

对于dropdownMenu仅仅只是把他当作一个盒子
只需要添加一个插槽
把盒子搭好即可

<template>
  <div class
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值