表格行选中高亮 highlight-current-row
<el-table
ref="singleTableRef"
v-loading="loading"
:data="menuList"
border
row-key="menuId"
:default-expand-all="isExpandAll"
highlight-current-row
@row-click="handleClick"
@current-change="handleCurrentChange"
>
取消高亮:setCurrentRow()
proxy.$refs.singleTableRef.setCurrentRow(-1)
由于current-change事件只选中一次,因此需要同时使用row-click
let isFirst = ref(false)
let nowRow = ref(false)
function handleCurrentChange(currentRow,oldCurrentRow) {
if (oldCurrentRow!== undefined && currentRow.menuId !== oldCurrentRow?.menuId) {
isFirst.value = true
nowRow.value = true
}
}
function handleClick(row, column, event) {
if (!isFirst.value || nowRow.value) {
isFirst.value = true
nowRow.value = false
}else{
isFirst.value = false
proxy.$refs.singleTableRef.setCurrentRow(-1)
}
}