位置: IT常识 - 正文

使用 el-table 实现树形数据懒加载、点击行展开、每次只展示一条数据(大类)以及自定义表格合计值(el-table-column formatter)

编辑:rootadmin
使用 el-table 实现树形数据懒加载、点击行展开、每次只展示一条数据(大类)以及自定义表格合计值 1. 使用 el-table 实现树形数据懒加载实现必需条件:lazy:load=“loadNode”:tree-props=“{ children: ‘children’, hasChildren: ‘hasChildren’ }”

推荐整理分享使用 el-table 实现树形数据懒加载、点击行展开、每次只展示一条数据(大类)以及自定义表格合计值(el-table-column formatter),希望有所帮助,仅作参考,欢迎阅读内容。

使用 el-table 实现树形数据懒加载、点击行展开、每次只展示一条数据(大类)以及自定义表格合计值(el-table-column formatter)

文章相关热门搜索词:el-table key,el-table append,el-table-column formatter,el-table-column formatter,el-table-column scope,el-table-column scope,el-table-column formatter,el-table ref,内容如对您有帮助,希望把文章链接给更多的朋友!

注意:特别是第3条,后端接口必须传给你"hasChildren"(名字可以不一样),值为 true或false,如果是根节点值为true,子节点值为false,不然数据旁边的小三角不会显示,即不能获取子节点数据

实现代码如下:<el-tablelazy:load="loadNode":tree-props="{ children: 'children', hasChildren: 'hasChildren' }"// 点击小三角执行的方法const loadNode = (row: { [key: string]: any }, treeNode: any, resolve: any) => {if (row.level >= 1) {state.tableData.param.level = row.level + 1; //后端要求传参变化state.tableData.param.code = row.code;Query(state.tableData.param).then((response: Array<{ [key: string]: any }>) => {resolve(response);});}};>2. 点击行展开要求点击当前行也可以展开数据(之前是点击小三角才能展开)代码如下:// 使用点击事件@row-click="getOpenDetail"// 点击当前行展开节点const getOpenDetail = (row: any, column: any, e: any) => {if (e.currentTarget.firstElementChild.firstElementChild.firstElementChild.tagName == 'DIV') {e.currentTarget.firstElementChild.firstElementChild.firstElementChild.click();} else {e.currentTarget.firstElementChild.firstElementChild.firstElementChild.nextElementSibling.click();}};3. 每次只展示一条数据要求点击根节点时,其余根结点不展开,只展开当前根节点及其对应的子节点代码如下:// 需要用到以下代码,其中 code 为数据唯一标识,与 id 作用一样row-key="code":expand-row-keys="expands"@expand-change="expandSelect"// 每次只展开一行const expandSelect = (row: { [key: string]: any }, expanded: boolean) => {if (expanded) {expands.value = [];if (row) {expands.value.push(row.code, row.code.substring(0, 2), row.code.substring(0, 4), row.code.substring(0, 6)); // 每次push进去的是每行的code和父元素的code}} else {expands.value = []; // 默认不展开}};后台数据如下:

根节点数据为code前两位数,以后的子节点数据依次加两位数

4. 自定义表格合计值要求在表格的最后一行显示数据的合计值,因为是懒加载的数据,不能自动累加显示出合计值,前端需要自己赋值代码如下:show-summary:summary-method="getSummaries"// 自定义表尾合计行const getSummaries = (param: any) => {const { columns, data } = param;const sums: string[] = [];columns.forEach((column: any, index: number) => {switch (index) {case 0:sums[index] = '合 计';break;case 2:sums[index] = state.array.allDutyCost;// state.array.allDutyCos 为后端返回已经计算好的总数值break;case 3:sums[index] = state.array.allBudgetCost;break;case 4:sums[index] = state.array.allAdjustCost;break;default:sums[index] = '——';}});

文中有错误或不懂的地方,可以留言一起讨论!

本文链接地址:https://www.jiuchutong.com/zhishi/288777.html 转载请保留说明!

上一篇:浏览器无痕浏览还能查到记录吗,如何开启无痕模式(浏览器无痕浏览后警察能查到吗)

下一篇:IDEA如何运行SSM项目(超详细图解)(idea如何运行ssm项目spring)

  • 企业销售固定资产车辆怎么开票
  • 企业转出多交增值税吗
  • 年金是否一定是每年发生一次
  • 购固定资产需要交什么税
  • 销售使用过的固定资产放弃减税
  • 公司为员工报销的医药费
  • 权益工具是金融资产还是所有者权益
  • 电子银行承兑重复背书
  • 劳务外包可以差额纳税吗
  • 网上申报中月平均工资怎么计算
  • 固定资产清理属于
  • 个人借款到期未还诉讼时效
  • 股权案例分析2020
  • 酒店收到物品损失怎么办
  • 试运营收入账务处理
  • 固定资产的确认条件有哪些
  • uefi模式怎么装机
  • 离职违约金赔偿标准
  • 其他应付款贷方增加
  • sgmain.exe - sgmain是什么进程 有何作用
  • 其他应付款的核算范围包括应付短期租赁
  • 什么是增值税进项税额和销项税额
  • win10显示未充电
  • 资产负债表要点
  • 应收账款应付账款属于什么科目
  • css 100vw、100vh出现滚动条怎么解决
  • 小规模纳税人低于30万怎么填报申报表
  • js中this指向有几种情况
  • 帝国cms如何设置最新
  • 物流公司主营业务怎么写
  • 进口形式发票能证明商品是进口的吗
  • 公司承担员工的费用,员工违规吗
  • photoshop虚化局部
  • SQL Server 2005 Management Studio Express企业管理器将英文变成简体中文版的实现方法
  • 假退库会计分录
  • sqlserver根据查询结果创建表
  • 贷款计入什么科目
  • 应收账款和应付账款属于什么科目
  • 电子发票怎么知道发票代码
  • 出口退税申报分录怎么写
  • 房租费会计分录
  • 资本公积只能转现金吗
  • 实收资本怎么确认入账
  • 什么是小规模纳税人2023
  • 给法人交社保,不发工资可以吗
  • 汇票本票支票的联系
  • 年初建账考虑要点有哪些
  • sql server使用教程
  • 如何修改sqlserver中sa用户的密码
  • mysql怎么创建储存过程
  • sql时间格式化大全
  • office技术预览版和增强版
  • OpenBSD 3.8 release 架设FTP服务器
  • windows media player播放不了mp4
  • ubuntu下安装QT教程
  • win8点击桌面没反应
  • 重装Windows11
  • 苹果mac操作系统名称
  • xp密码忘记了怎么办大神
  • win8系统修改密码
  • 如何给win7系统升级
  • 如何调整输入法框的大小
  • linux系统如何禁用光驱
  • linux 怎么样
  • cocos 2d x
  • ExtJS4如何自动生成控制grid的列显示、隐藏的checkbox
  • js 获取ua
  • linux流量监测工具
  • 控制程序的先后顺序是怎样的
  • awk 查找
  • pyqt用法
  • nodejs gyp
  • Python随机生成数字求最小的三个数字
  • 基于js实现微信直播
  • python中的迭代器
  • 保险理赔款如何分配
  • 怎么查询企业类别
  • 国税地税分开原因
  • 增值税普票十万怎么开
  • 银元面值有哪些种类
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设