关于elementui plus table的一些操作

表格选择回显

javascript 复制代码
//单条回显
pickTable.value.toggleRowSelection(row, true)
//回显后 全选
const handleSelectionChange = (val: any) => {
  val.map((row: any, index: any) => {
    if (val.length <= 1) {
      return
    }
    pickTable.value.toggleRowSelection(row, false)
    if (index === val.length - 1) {
      pickTable.value.toggleRowSelection(row, true)
    }
  })
}

获取表格所有选项

javascript 复制代码
const arr = pickTable.value.getSelectionRows()

清空选项

javascript 复制代码
 tableRef.value.clearSelection()

树表格懒加载

javascript 复制代码
<el-table v-loading="loading" ref="tableRef" lazy class="custom-table" :data="tableData" row-key="uuid"
          :load="load" :tree-props="{ children: 'children', hasChildren: 'hasChildren' }"
          :header-row-style="config.table.header.row" :header-cell-style="config.table.header.cell" :border="true"
          @select="handleSelect" @select-all="handleSelectAll">
          <el-table-column type="selection" reserve-selection width="55" :selectable="selectable" />
          <el-table-column label="工作事项" prop="name" />
        </el-table

//获取列表时需要
 tableData.value.forEach((e) => {
          e["hasChildren"] = true;
          e["leave"] = 1;
          rowMaps.set(e.uuid, e);
        });

//懒加载展开
const load = (row: AssessWorkMatter, treeNode: unknown, resolve: (data: AssessWorkMatter[]) => void) => {
  getSubBaseAuditMatterList(row.uuid).then((data: any) => {
    resolve(data);
  })
};
 
//刷新 stageUuid是父节点的id
const materialRefench = () => {
  if (!stageUuid.value) return
  const data = rowMaps.get(stageUuid.value)
  // 重置节点
  tableRef.value.store.states.treeData.value[data.uuid].loaded = false;
  // 数据处理完成后 加载数据并展开父节点
  tableRef.value.store.loadOrToggle(data);
};
相关推荐
万少1 小时前
使用Trae轻松安装openclaw的教程-附带免费token
前端·openai·ai编程
颜酱2 小时前
一步步实现字符串计算器:从「转整数」到「带括号与优化」
javascript·后端·算法
浪浪山_大橙子2 小时前
OpenClaw 十分钟快速,安装与接入完全指南 - 推荐使用trae 官方 skills 安装
前端·人工智能
忆江南2 小时前
iOS 可视化埋点与无痕埋点详解
前端
离开地球表面_992 小时前
金三银四程序员跳槽指南:从简历到面试再到 Offer 的全流程准备
前端·后端·面试
_柳青杨2 小时前
跨域获取 iframe 选中文本?自己写个代理中间层,再也不求后端!
前端
比尔盖茨的大脑2 小时前
事件循环底层原理:从 V8 引擎到浏览器实现
前端·javascript·面试
天才熊猫君2 小时前
Vue3 命令式弹窗原理和 provide/inject 隔离机制详解
前端
bluceli2 小时前
Vue 3 Composition API深度解析:构建可复用逻辑的终极方案
前端·vue.js
程序员ys2 小时前
前端权限控制设计
前端·vue.js·react.js