使用element-ui组件实现下拉菜单显示与折叠,并触发函数

本文介绍如何在Element UI的ElTable组件中实现操作列的下拉菜单功能,包括升级、重启和删除等选项,通过ElDropdown组件实现菜单的交互效果。
  • 实现类似功能

在这里插入图片描述

  • 关键代码
<el-table>
    <el-table-column fixed="right" header-align="center" align="center" width="150" label="操作">
        <template slot-scope="scope">
             <el-dropdown size="small">
                  <span style=" font-size: 12px; color: #17B3A3;">
                     更多
                  </span>
                  <el-dropdown-menu slot="dropdown">
                      <el-dropdown-item @click.native="doUpgrade(scope.row.deviceid)">升级</el-dropdown-item>
                      <el-dropdown-item @click.native="doReboot(scope.row.deviceid)">重启</el-dropdown-item>
                      <el-dropdown-item @click.native="pubScript(scope.row.id)">删除</el-dropdown-item>
                  </el-dropdown-menu>
          </el-dropdown>
        </template>
    </el-table-column>
</el-table>
  • 处理函数省略
### 使用 Element UI 实现下拉菜单点击后折叠 为了实现下拉菜单点击后的折叠功能,可以利用 `el-collapse` 和 `el-dropdown` 组件结合的方式。下面是一个具体的例子展示如何做到这一点。 #### HTML 结构 在模板部分创建一个带有下拉菜单的按钮,绑定相应的事件处理函数: ```html <template> <div class="dropdown-container"> <el-dropdown trigger="click" @command="handleCommand"> <span class="el-dropdown-link">更多操作<i class="el-icon-arrow-down el-icon--right"></i></span> <el-dropdown-menu slot="dropdown"> <el-dropdown-item command="a">黄金糕</el-dropdown-item> <el-dropdown-item command="b">狮子头</el-dropdown-item> <el-dropdown-item command="c">螺蛳粉</el-dropdown-item> <el-dropdown-item command="d" divided>双皮奶</el-dropdown-item> <el-dropdown-item command="e">蚵仔煎</el-dropdown-item> </el-dropdown-menu> </el-dropdown> <!-- 折叠面板 --> <el-collapse v-model="activeNames" style="margin-top: 20px;"> <el-collapse-item title="一致性 Consistency" name="1"> <div>现实生活一致:现实生活的流程、逻辑保持一致。</div> </el-collapse-item> <el-collapse-item title="反馈 Feedback" name="2"> <div>控制反馈:通过界面样式和交互动效让用户可以清晰的感知自己的操作;页面反馈:操作后,通过页面元素的变化清晰地展现当前状态。</div> </el-collapse-item> </el-collapse> </div> </template> ``` #### JavaScript 部分 定义数据属性以及命令处理器方法,在这里设置了一个简单的数组用于管理展开/收起的状态: ```javascript <script> export default { data() { return { activeNames: [] // 控制哪些项被选中,默认为空表示全部关闭 }; }, methods: { handleCommand(command) { console.log(`click on item ${command}`); // 切换折叠面板状态 if (this.activeNames.length === 0){ this.activeNames = ['1', '2']; }else{ this.activeNames = []; } } } }; </script> ``` 此代码片段展示了如何监听下拉菜单的选择切换折叠面板的状态[^1]。每当用户点击某个选项时,都会触发 `handleCommand()` 方法来更新 `activeNames` 数组的内容,从而达到打开或关闭指定项目的视觉效果。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值