element plus el-table 实现单选较简单写法

本文指导如何将el-table组件从多选切换到单选模式,通过在el-radio标签内添加隐藏节点解决选中时label显示问题,适合前端开发者参考。

element plus el-table 其实官网是有实现单选的配置选项的,就是通过highlight-current-row和 current-change实现的,只不过,他是通过高亮实现选中状态的,感觉对用户来说不是很明显。下面是一种左侧仍显示选择框的一种较简单写法。

<el-table
   class="single-select"
   ref="tableRef"
   @selection-change="handleSelectionChange"
>

    <el-table-column type="selection" />
    <el-table-column label="序号" type="index" />
    <el-table-column label="商品编码" prop="skuCode"  />
    <el-table-column label="商品名称" prop="skuName/>
</el-table>
tableRef = ref()

function handleSelectionChange(val) {
    if (val.length >= 2) {
      const lastIndex = val.length - 1
      // 清空所有已选择的,然后选最后一项
      unref(tableRef)?.clearSelection()
      unref(tableRef)?.toggleRowSelection(val[lastIndex])
      val = [val[lastIndex]]
    }
    aSelect.value = val
}
// 通过样式隐藏头部全选按钮
.single-select :deep(.el-table__header) {
    .el-checkbox {
      display: none;
    }
  }

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值