位置: IT常识 - 正文

el-table懒加载,修改数据局部加载懒加载数据(el-table懒加载合并行)

发布时间:2024-01-11
el-table懒加载,修改数据局部加载懒加载数据

推荐整理分享el-table懒加载,修改数据局部加载懒加载数据(el-table懒加载合并行),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:eltable懒加载 查询功能,el-table懒加载数据,eltable懒加载数据,el-table懒加载数据,eltable懒加载 查询功能,eltable懒加载数据,eltable懒加载局部刷新,eltable懒加载局部刷新,内容如对您有帮助,希望把文章链接给更多的朋友!

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档

文章目录前言一、在el-table中开启懒加载二、进行改造1.在data中添加全局变量2.在对应的操作中给`thisTabeDom`赋值3.编写回调方法`tabeDomCallback`4.对话框操作后进行方法回调总结前言

看着标题是不是有点绕,这里的需求是使用el-table的懒加载,加载数据后,修改懒加载后的数据时不进行全局的刷新,而是只操作当前懒加载的数据,比如一级是真实的数据,二级是懒加载的数据,当二级的某条数据进行了修改后,只让当前的二级菜单重新向后台请求数据,进行刷新得到最新的数据

一、在el-table中开启懒加载el-table懒加载,修改数据局部加载懒加载数据(el-table懒加载合并行)

支持树类型的数据的显示。当 row 中包含 children 字段时,被视为树形数据。渲染树形数据时,必须要指定 row-key。支持子节点数据异步加载。设置 Table 的 lazy 属性为 true 与加载函数 load 。通过指定 row 中的 hasChildren 字段来指定哪些行是包含子节点。children 与hasChildren 都可以通过 tree-props 配置。

<el-table :data="tableData" style="width: 100%" row-key="id" border lazy :load="load" :tree-props="{children: 'children', hasChildren: 'hasChildren'}"> <el-table-column prop="date" label="日期" width="180"> </el-table-column> <el-table-column prop="name" label="姓名" width="180"> </el-table-column> <el-table-column prop="address" label="地址"> </el-table-column> </el-table></div></template><script> export default { data() { return { thisTabeDom: Object, tableData: [{ id: 1, date: '2016-05-02', name: '王小虎', address: '上海市普陀区金沙江路 1518 弄' }, { id: 2, date: '2016-05-04', name: '王小虎', address: '上海市普陀区金沙江路 1517 弄' }, { id: 3, date: '2016-05-01', name: '王小虎', address: '上海市普陀区金沙江路 1519 弄', hasChildren: true }, { id: 4, date: '2016-05-03', name: '王小虎', address: '上海市普陀区金沙江路 1516 弄' }] } }, methods: { load(tree, treeNode, resolve) { setTimeout(() => { resolve([ { id: 31, pid: 3, date: '2016-05-01', name: '王小虎', address: '上海市普陀区金沙江路 1519 弄' }, { id: 32, pid: 3, date: '2016-05-01', name: '王小虎', address: '上海市普陀区金沙江路 1519 弄' } ]) }, 1000) } }, }</script>二、进行改造1.在data中添加全局变量

代码如下(示例):

export default { data() { return { // 存储操作的DOM数据 thisTabeDom: Object, tableData: [{}] } }}2.在对应的操作中给thisTabeDom赋值

代码如下(示例):

<el-buttonicon="el-icon-edit" type="primary" size="mini" @click="handleDialogForm(scope)">编辑</el-button><!-- 编辑/新增弹出框 --><dialog-formBox :visible.sync="dialogFormVisible" :menuInrForm="this.menuForm" @addCallback="tabeDomCallback"></dialog-formBox>/** * 新增、编辑 */handleDialogForm(box) { // 将操作的scope保存在全局变量中 this.thisTabeDom = box console.log(box); if (box.row && box.row.id) { this.menuForm = { ...box.row }; } else { this.menuForm = {}; } // 显示el-dialog对话框进行数据修改操作 this.dialogFormVisible = true;},3.编写回调方法tabeDomCallback

代码如下(示例):

// 修改回调tabeDomCallback(val) { console.log(val); console.log(this.thisTabeDom.row); var states = this.thisTabeDom.store.states var treeData = states.treeData // 判断获取的ID是父ID还是当前ID let id = val ? this.thisTabeDom.row.id : this.thisTabeDom.row.pid let data = treeData[id] let teb = 'loaded' in data // 如果对象中没有loaded字段,则表示修改的数据不是懒加载的 if (!teb) { // 调用列表刷新 this.getList() console.log('回调结束,刷新列表'); return } // 将懒加载数据标志改为false treeData[id].loaded = false // 调用组件内部的方法加载数据 间接调用懒加载方法 this.thisTabeDom.store.loadOrToggle({id}) console.log('回调结束,刷新DOM');},4.对话框操作后进行方法回调

代码如下(示例):

/** * 确认提交 */confirm() { this.$refs.menuForm.validate(async (valid) => { if (valid) { //编辑 if (this.menuForm && this.menuForm.id) { await organApi.update({ id: this.menuForm.id, name: this.menuForm.name, }); // 回调,false 表示通过父ID懒加载子节点 await this.$emit("addCallback", false); this.$message.success("修改成功"); } else { //新增 await organApi.add({ name: this.menuForm.label, pid: this.menuForm.pid? this.menuForm.pid: 0, }); // 回调,false 表示通过当前ID懒加载子节点 await this.$emit("addCallback", true); this.$message.success("新增成功"); } this.onClose(); } });},总结

希望之篇文章对大家有所帮助 方法实现 Debug el-table的懒加载

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

上一篇:linux搭建web服务器流程(linux搭建web服务器)

下一篇:【人工智能大作业】A*和IDA*搜索算法解决十五数码(15-puzzle)问题 (Python实现)(启发式搜索)(人工智能示例)

  • 无住所居民个人所得税的计算
  • 收到失业保险稳岗补贴会计分录
  • 行政人员出差预借差旅费需要预算会计吗
  • 企业所得税纳税人包括哪些类型
  • 最新出口退税申报流程
  • 工程承建方给予的工期奖励如何做账?
  • 企业用商业汇票支付购货款
  • 会员充值赠送
  • 4s店改装车后卖车合法吗
  • 开具发票只有票号可以吗?
  • 航天金税财务软件使用说明
  • 所得税季报固定资产加速折旧表资产原值
  • 特许权使用费分摊比例怎么算
  • 电解铜进口可以卖吗
  • 小规模开专票不超过45万要交税吗
  • 增值税普通发票和普通发票的区别怎么交税
  • 主营业务收入会计英语
  • 金蝶kis标准版软件操作流程演示
  • 电费的税费计入什么会计科目
  • 企业年金企业所得税扣除标准
  • 户外广告经营总额
  • 短期融资券是
  • mac软件打开提示意外退出
  • 息税前利润变化率计算
  • 网速怎么限制10mb以内
  • 在XP中,为什么"网络连接"图标消失?
  • 下列关于企业发生的税费说法正确的是
  • ensmix32.exe进程安全吗 ensmix32进程是什么文件产生的
  • msmpeng.exe 是什么
  • 非货币性资产交换
  • 开发商自用房产出售成为二手房土地成本
  • php常见设计模式和用途
  • 原材料入库时如何计价
  • 微前端Qiankun 子应用css后加载问题
  • vue3怎么样
  • php魔术常量有多少
  • Swagger-的使用(详细教程)
  • high-resolution image synthesis with latent diffusion models
  • tar 压缩命令tar
  • 会计证的作用和用途
  • 购买方纳税人信息与第三方信息不符
  • 加收税收滞纳金属于行政处罚吗
  • html获取php数据
  • 新购入的汽车需要年检吗
  • 个体工商户可以给自己交社保吗
  • 子公司收购母公司另一子公司会计处理
  • 劳务报酬什么情况下可以退税
  • 营业外支出的计算公式
  • 什么情况下要去y加ies
  • 交易性金融资产入账价值怎么计算
  • 无票收入不走对公账户
  • 租赁行业的增值税率
  • 汇兑收益怎么做分录
  • 退货销售折让会计分录
  • 收到汽车抵账账务处理
  • 对公账户与私人账户都是一级
  • haproxy教程
  • win10有没有语音输入
  • ubuntu支持软件
  • 如何封禁
  • linux pwdx命令
  • macbook的dock栏
  • 微软windows1
  • win7升级win 10
  • windows10禁用独立显卡
  • [置顶] 《精神怪谈》 后续起点
  • js格式化日期yyyy-mm-dd hh:mm:ss
  • nodejs filereader
  • python图片处理酷炫效果
  • jquery图片轮播无缝连接
  • vue实战案例
  • NGUI简介
  • python爬虫详解
  • web前端入门教程
  • 个人经营所得定率征收税率表
  • 税务非正常户解除申请怎么写
  • 个体户注销税盘需要公章吗
  • 社保诚信申报怎么取消
  • 耗电异常优化是什么意思微信
  • 深圳宝安到揭阳大巴
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号