vue2之el-table表格多选改单选

vue2之el-table表格多选改单选

模板代码

html 复制代码
<el-table ref="tableRef" :data="tableData" border class="order-plan-table" 
:show-summary="showSummary" @selection-change="handleSelectionChange" @select="handleSelect">
      <el-table-column type="selection" width="55" align="center" />
 </el-tabel>

script代码

js 复制代码
data() {
    return {
      ids: [],
      selectedRow: [],
    }
  },
//-----------------下面是methods--------------------------
// 多选框选中数据
    handleSelectionChange(selection) {
      this.ids = selection.map(item => item.id)
      if (selection.length > 0) {
        this.selectedRow = selection[selection.length - 1];
      } else {
        this.selectedRow = null;
      }
      this.$emit('selection-change', this.selectedRow);
    },
    handleSelect(selection, row) {
      // 点击单行时强制单选
      if (selection.length > 1) {
        this.$refs.tableRef.clearSelection();
        this.$refs.tableRef.toggleRowSelection(row, true);
      }
    },

样式,需要隐藏全选按钮, 这里使用了样式穿透, scss需留意

css 复制代码
<style scoped>
::v-deep .el-table__header-wrapper .el-checkbox {
  display: none;
  /* 隐藏全选复选框 */
}
::v-deep .el-table__header-wrapper .el-table-column--selection .cell {
  padding-left: 0;
  /* 调整列间距 */
}
</style>
相关推荐
前端小L12 分钟前
专题二:核心机制 —— reactive 与 effect
javascript·源码·vue3
代码老祖12 分钟前
vue3 vue-pdf-embed实现pdf自定义分页+关键词高亮
前端·javascript
未等与你踏清风12 分钟前
Elpis npm 包抽离总结
前端·javascript
林恒smileZAZ15 分钟前
【Vue3】我用 Vue 封装了个 ECharts Hooks
前端·vue.js·echarts
前端小菜鸟也有人起22 分钟前
浏览器不支持vue router
前端·javascript·vue.js
腥臭腐朽的日子熠熠生辉25 分钟前
nest js docker 化全流程
开发语言·javascript·docker
奔跑的web.25 分钟前
Vue 事件系统核心:createInvoker 函数深度解析
开发语言·前端·javascript·vue.js
再希30 分钟前
TypeScript初体验(四)在React中使用TS
javascript·react.js·typescript
江公望36 分钟前
VUE3中,reactive()和ref()的区别10分钟讲清楚
前端·javascript·vue.js
徐同保1 小时前
上传文件,在前端用 pdf.js 提取 上传的pdf文件中的图片
前端·javascript·pdf