vue3中用highlight-current-row实现饿了吗table表格单行点击高亮

在饿了吗的官网上我们可以看到table的属性里面highlight-current-row

 在vue中的使用方法如下

​
 <el-table :data="tableData"
                @row-click="rowClick"
                ref='inRuTabRef'
                highlight-current-row>
        <el-table-column label="设备名称"
                         align="center">
          <template #default="scope">
            {{scope.row.devicePointVo.deviceName}}
          </template>
        </el-table-column>
 </el-table>

​

可以通过样式穿透修改他的高亮显示样式

::v-deep .ep-table__body tr.current-row > td.ep-table__cell {
  background-color: #0887bd !important;
}

通过上面的代就可以实现表格的单行点击高亮

但是可能还有这样的一个需求,默认第一行高亮,我们就需要用table的一个方法setCurrentRow,他的使用方法是用于单选表格,设定某一行为选中行, 如果调用时不加参数,则会取消目前高亮行的选中状态。

 

首先给el-table绑定ref的值,通过$ref获取到表格的一个实例,但是在vue3中使用了 setup的语法糖,是没有this的,需要导入getCurrentInstance来使用$refs设置默认第一行高亮,

import { getCurrentInstance } from '@vue/runtime-core';
const currentInstance = getCurrentInstance()
//获取厚道返回的数据后执行nextTick函数
nextTick(() => {
   currentInstance.ctx.$refs.inRuTabRef.setCurrentRow(tableData.value[0]);

})

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值