el-table控制type=“expand“展开列 根据条件显示或隐藏展开按钮

1,通过样式控制 首先定义行class样式 在组件中需通过样式穿透

复制代码
::v-deep {
  .row-expand-unhas .el-table__expand-column {
    pointer-events: none;
  }
  .row-expand-unhas .el-table__expand-column .el-icon {
    visibility: hidden;
  }
}

2,行判断数据条件 添加class

复制代码
    <el-table
      ref="tableRef"
      :data="tableData"
      style="width: 100%"
      row-key="id"
      border
      :height="tableHeight"
      :row-class-name="getRowClass"
      @expand-change="handleExpandChange"
    >
      <el-table-column type="expand">
        <template #default="props">
....
        </template>
      </el-table-column>


    // 根据是否合计行判断是否隐藏展开按钮
    getRowClass({row}) {
      const res = []
      if (row.sector !== '合计') {
        res.push('row-expand-has')
        return res
      } else {
        res.push('row-expand-unhas')
        return res
      }
    },

3.最终效果

相关推荐
qq_4061761411 分钟前
深入剖析JS中的XSS与CSRF漏洞:原理、攻击与防御全指南
服务器·开发语言·前端·javascript
yanyu-yaya20 分钟前
速学兼复习之vue3章节4
前端·vue.js·前端框架
Mr-Wanter23 分钟前
vue 数据反显时数字/字母不换行导致的样式问题
前端·javascript·vue.js
qq_124987075332 分钟前
基于Java的心理测试系统的设计与实现(源码+论文+部署+安装)
java·开发语言·vue.js·spring boot·计算机毕设·计算机毕业设计
daols881 小时前
vue表格 vxe-table 如何实现键盘导航时,按回车健向右移动,并到最后一行时按回车自动新增一行
vue.js·vxe-table
m0_740859621 小时前
解决uniapp跳转页面警告:Extraneous non-props attributes ...
前端·javascript·uni-app
一行注释1 小时前
ECharts柱状图横向展示与DataZoom滑动查看实现
开发语言·前端·javascript
踢球的打工仔2 小时前
typescript-类的访问权限public、private、protected
前端·javascript·typescript
Ulyanov2 小时前
Impress.js深度解析
开发语言·前端·javascript·css3·impress.js
编程大师哥2 小时前
JavaScript DOM
开发语言·javascript·ecmascript