• Elementui的el-dropdown组件使用与案例


    一、使用

    • trigger 属性用于设置下拉菜单的触发方式,可以是 click(点击触发)或 hover(悬停触发)。
    • command 属性用于在 el-dropdown-item 上设置命令值。当用户点击某个菜单项时,会触发 command 事件,并将 command 的值作为参数传递给事件处理函数。
    • 在组件的方法中,你可以定义一个名为 handleCommand 的函数来处理 command 事件。这个函数将接收一个参数(即被选中的菜单项的 command 值),并执行相应的操作。
    • 使用了 slot="dropdown" 属性来指定下拉菜单的内容应该插入到哪个插槽中。
      1. <template>
      2. <div>
      3. <el-dropdown @command="handleCommand(command)" trigger="click">
      4. <span class="el-dropdown-link">
      5. 下拉菜单<i class="el-icon-arrow-down el-icon--right"></i>
      6. </span>
      7. <el-dropdown-menu slot="dropdown">
      8. <el-dropdown-item command="1">选项1</el-dropdown-item>
      9. <el-dropdown-item command="2">选项2</el-dropdown-item>
      10. <el-dropdown-item command="3" disabled>选项3(禁用)</el-dropdown-item>
      11. <el-dropdown-item divided>选项4</el-dropdown-item>
      12. </el-dropdown-menu>
      13. </el-dropdown>
      14. </div>
      15. </template>
      16. <script>
      17. export default {
      18. methods: {
      19. handleCommand(command) {
      20. this.$message('你选择了 ' + command);
      21. //可在这里发送请求与后端交互...
      22. },
      23. },
      24. };
      25. </script>
      26. <style scoped>
      27. /* 这里可以添加你的样式 */
      28. </style>

      二、案例

    • 实现表格中下拉选框选择并改变数据。当在表格中使用原始下拉选框,是不美观的,我们就可以使用el-dropdown组件。部分代码如下:

    界面:

    1. <el-table-column label="账号属性" prop="fundAccountAttribute">
    2. <template slot-scope="scope">
    3. <el-dropdown @command="openAccount2(scope.row, $event)">
    4. <div>
    5. <span v-if="scope.row.fundAccountAttribute == '0'">作案身份</span>
    6. <span v-else-if="scope.row.fundAccountAttribute == '1'">个人生活身份</span>
    7. <i class="el-icon-edit" id="icon"></i>
    8. </div>
    9. <el-dropdown-menu slot="dropdown">
    10. <el-dropdown-item command="0">作案身份</el-dropdown-item>
    11. <el-dropdown-item command="1">个人生活身份</el-dropdown-item>
    12. </el-dropdown-menu>
    13. </el-dropdown>
    14. </template>
    15. </el-table-column>

    js:

    1. openAccount2(row,command){
    2. console.log("修改资金信息属性",row);
    3. let data = {
    4. fundBank: row.fundBank, //归属机构
    5. fundAccountNumber: row.fundAccountNumber, //支付账号
    6. fundAccountType: row.fundAccountType, //账号类型
    7. fundAccountAttribute: command, //账号属性
    8. suspectId: row.suspectId,
    9. id:row.id
    10. };
    11. detailFund(data).then((res) => {
    12. console.log("修改资金信息属性", res);
    13. if (res.data.code == 0) {
    14. this.getFundInfo();
    15. this.$message({
    16. message: "修改属性成功",
    17. type: "success",
    18. });
    19. }
    20. });
    21. },
    22. //请求
    23. getFundInfo() {
    24. getFundInfo({ suspectId: this.row.id }).then((res) => {
    25. this.fundInfo = res.data.data;
    26. console.log("资金信息", res.data.data);
    27. });
    28. },
    29. //.....

  • 相关阅读:
    交通银行面经
    【Nginx】实战应用(服务器端集群搭建、下载站点、用户认证模块)
    Unity --- 文本输入框的使用
    AI写代码:我用kimi生成了一个设备节点监控网站,完美实现功能
    基于nodejs+vue小型企业银行账目管理系统
    PCB板的元素组成
    2022年最新山西交安安全员考试模拟题库及答案
    java基础13
    基于SSM的药品管理系统的设计与实现
    国庆作业 day 2
  • 原文地址:https://blog.csdn.net/qq_53911056/article/details/139808866