<el-table-column v-for="(item,i) in tableData" :key="i" v-overflow-tooltip :fixed="i===0" :label="item.headName" :prop="item.headColumn" align="center">
<template v-slot:header="scope">
<div @mousemove="onMouseOver('refName' + scope.$index)">
<el-tooltip :content="scope.column.label" :disabled="isShowTooltip" placement="top">
<div class="text-truncate">
<span :ref="'refName' + scope.$index">{{ scope.column.label }}</span>
</div>
</el-tooltip>
</div>
</template>
</el-table-column>
//js部分
data(){
return:{
isShowTooltip:false
}
}
methods:{
onMouseOver (refName) {
const parentWidth = this.$refs[refName][0].parentNode.offsetWidth
const contentWidth = this.$refs[refName][0].offsetWidth
// 判断是否开启tooltip功能
this.isShowTooltip = !(contentWidth > parentWidth)
},
}
![](https://img-blog.csdnimg.cn/29707c2c30c24d50ae48bba53cfc945a.png)