效果如下:
试过很多种办法,思路都在怎么控制<el-table-column type="expand">里面的type上,比如使用v-show等等,但是发现,要不就是展开图标全部没有,要不就是全部有,研究好久,终于想出来这么个办法:
使用getRowClass针对每一行添加类,
getRowClass(row, index) { let res = [] if (!row.children)//即改行没有子元素时,添加row-expand-cover类 res.push('row-expand-cover') /* if (row.operate == 2) res.push('hide-row') return res.join(' ') */ }
然后设置该类的样式,把没有子元素的行的expand图标隐藏:
.row-expand-cover .el-table__expand-column .el-icon{ visibility:hidden; }