element tbas增加下拉框

使用Tabs 标签页的label插槽,嵌入Dropdown 下拉菜单,实现Tabs 标签页增加下拉切换功能

Tabs 标签页

@tab-click="事件"(这个事件当中到拥有下拉框的tab里时,可以存一下Dropdown 第一个菜单的id,实现点击到拥有下拉框的tab时执行Dropdown 菜单值的查询)

Dropdown 下拉菜单

@command="事件"(这个事件里点击时,直接将Tabs 绑定的v-model值设置为拥有下拉框的tab ID,实现点击Dropdown 菜单时,切换到指定的Tab页)
可以考虑不使用 Dropdown 菜单 手搓一个类似功能的dom,这样方便增加下拉时,下拉菜单是选中,目前我是把选中的下拉菜单名,放入的tab中进行展示,实现区分在哪个下拉菜单中

代码(vue2、vue3同一个思路)

复制代码
//简易版
 <el-tabs v-model="activeName" @tab-click="handleClick">
    <el-tab-pane label="用户管理" name="first">用户管理</el-tab-pane>
    <el-tab-pane label="配置管理" name="second">配置管理</el-tab-pane>
    <el-tab-pane label="角色管理" name="third">角色管理</el-tab-pane>
    <el-tab-pane label="下拉菜单" name="fourth">


        <el-dropdown placement="bottom" @command="handleAllExamList">
              <span class="el-dropdown-link">
                下拉菜单<i class="el-icon-arrow-down el-icon--right"></i>
              </span>
            <el-dropdown-menu slot="dropdown">
            <el-dropdown-item>黄金糕</el-dropdown-item>
            <el-dropdown-item>狮子头</el-dropdown-item>
            <el-dropdown-item>螺蛳粉</el-dropdown-item>
            <el-dropdown-item disabled>双皮奶</el-dropdown-item>
            <el-dropdown-item divided>蚵仔煎</el-dropdown-item>
          </el-dropdown-menu>
        </el-dropdown>


    </el-tab-pane>
  </el-tabs>






//循环版
<el-tabs v-model="activeOne" @tab-click="tabsClick">
              <el-tab-pane :name="tab.value" v-for="(tab, index) in tabList":key="index">
                <span slot="label" v-if="tab.name == '下拉菜单'">


                  <el-dropdown placement="bottom" @command="handleAllExamList">
                    <label class="zsk-css">
                         {
  
  { tab.name }}
                         <span v-if="dropdownDX">({
  
  { dropdownDX.name }})</span> 
                         <i class="el-icon-arrow-down el-icon--right"></i>
                    </label>
                    <el-dropdown-menu slot="dropdown">
                      <el-dropdown-item v-for="menu in dropdownMenu" 
                          :key="menu.value":command="menu.value">

                        {
  
  { menu.name }}

                      </el-dropdown-item>
                    </el-dropdown-menu>
                  </el-dropdown>


                </span>
                <span slot="label" v-else>
                  {
  
  { tab.name }}
                </span>
    </el-tab-pane>
</el-tabs>
相关推荐
小羊没烦恼!1 天前
初探性能优化——2个月到4小时的性能提升
java·开发语言·windows·算法·c#
三十而立洋1 天前
Cookie 详解:从产生到安全,一次讲透
前端·javascript
伞伞悦读1 天前
【第38期】Python 模块与包详解:import、from、模块搜索路径、包结构和 __init__
开发语言·python
卡布鲁1 天前
把一个 Vite + Vue3 应用塞进 qiankun (React + Umi3) 主站:十个坑的复盘
前端·javascript·react.js
C语言小火车1 天前
C/C++ 为什么需要编译器?
开发语言·c++
李少兄1 天前
JavaScript 隐式全局变量解析
javascript
霍霍的袁1 天前
【C++】map 和 set 的使用 | 从用法到底层
开发语言·c++·学习·visual studio
孙启超1 天前
【AI开发之Rust】第 11 课:智能指针与内部可变性
开发语言·后端·rust
此生决int1 天前
深入理解C++系列(20)——C++11(下)
开发语言·c++
沙蒿同学1 天前
我用 Go 搭了一条 AI Agent 流水线:从 1 张商品图到一整套淘宝详情页
前端·javascript·后端