位置: 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)

  • 员工年终奖个税规避
  • 施工企业的临时设施,属于企业的固定资产
  • 收购分公司和谁签协议
  • 小规模免税收入账务处理
  • 严格财务报销程序
  • 建筑简易征收的合同怎么写
  • 基金投资债券会赔吗
  • 或有负债怎么入账
  • 接受捐赠收入会计利润含税吗
  • 管理人员的奖惩制度
  • 我国流转税主要包括
  • 企业用流动资金怎么做账
  • 别人帮开票钱要打给别人账户吗
  • 怎样冲减虚开发票的会计分录
  • 增值税发票备注栏怎么填写
  • 企业购入机器设备供方登记
  • 研究开发费用扣除标准
  • 分支机构的季度所得税务报表是填合并报表吗
  • 财务做账借贷分别表示
  • 环境保护税法是什么意思
  • 如何正确使用好薪酬调查结果
  • psbcie.exe是什么
  • 赠送的商品怎么入库 企业会计准则
  • 代扣代缴的增值税可以作为进项税抵扣吗
  • 预付业务招待费会计分录
  • uefi系统安装win7gho
  • php 正则表达式
  • 重装系统j
  • 索尼笔记本电脑官网
  • linux配置多网卡设置
  • php options
  • 机器设备拆除增值税税率
  • 固定资产减少和固定资产折旧
  • 旅游企业会计ppt
  • javascript获取input的值并计算
  • pc端微信扫码支付
  • 公司给职工买工伤险流程
  • 什么时候免交教育费
  • 销项税比进项税多怎么办
  • 征收率有几种
  • 不计提工资直接发放可以吗
  • 月底分红
  • 贷款呆账准备金
  • 税局代个人开增值税普通票样板
  • sql2005怎么执行语句
  • 变卖固定资产的账务处理
  • 购入固定资产如何交所得税
  • 长期股权投资的账务处理
  • 厂家给经销商的补贴怎么开票
  • 主营业务收入记多栏还是三栏
  • 入账价值有
  • 土地出让金抵减销项税计算
  • 临时工工资如何做账
  • 公司费用报销单样本
  • 租赁办公楼
  • 出纳日记账的日期以什么为准
  • SQL server不存在或拒绝访问 u8
  • centos7.2安装
  • win10搜索类型
  • windows vista(service pack1)
  • linux系统中用户密码保存在什么文件中
  • win8管理员权限怎么打开
  • win8任务管理器快捷键
  • 本地磁盘安装
  • 微信付费使用是真的吗
  • win10系统怎么调整字体大小
  • windows7无法激活怎么解决方法
  • js 箭头表达式
  • opengl配置vc6.0
  • javascript教程chm
  • nodejs 内存不断增长
  • unity3d改变物体坐标系
  • bootstrap入门教程
  • python中的面向对象
  • python socket传输文字到网页
  • 手机360安卓桌面怎么去除广告
  • js全局变量怎么定义
  • Android应用程序可以直接在ios中安装运行吗
  • 医院票据怎么查询
  • 济南市中区税务局办税大厅
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设