table 合并单元格后,hove效果有问题,网上找了太多,没有用,浪费太多时间,自己写了一个
预期效果:
实际效果:
解决办法
1、给table 绑定三个事件
<el-table
:span-method="objectSpanMethod"
:data="list"
ref="selectCarList"
@row-click="toggleSelection($event)"
v-loading="loading"
style="width: 100%"
:height="tableHeight"
@selection-change="handleSelectionChange"
border
:row-class-name="rowClassName" // ++
@cell-mouse-enter="handleMouseEnter" // ++
@cell-mouse-leave="handleMouseLeave" // ++
@row-dblclick="viewInfo">
2、添加函数
// table 合并类名
handleMouseEnter(row, column, cell, event) {
this.cellIndex = row.order;
},
// 给相应的行
rowClassName({ row, rowIndex }) {
if(this.cellIndex===row.order){
return 'my-hover-row'
}else{
return ''
}
},
// 鼠标离开清空类名
handleMouseLeave(row, column, cell, event) {
this.cellIndex = -1;
}
3、添加类名
::v-deep{
.my-hover-row{
background: #f5f7fa !important;
}
}
order 为每行的标识符,order一样 那么就可以添加类名了。
一定要给 list 添加一个标识符,表示关联关系