解决Element UI 表格组件懒加载数据刷新问题

一、问题描述

element ui的table组件设置成懒加载时,遇到数据表格需要更新、删除等操作,子节点不会自动更新。

二、解决思路

刷新数据,就是重新调用load(),通过map记录已展开的节点,需要刷新数据时,取出对应treeNode,调用load()进行数据刷新。

三、代码实现(VUE)

javascript 复制代码
export default {
	data() {
		return {
			map: new Map(),
		}
	},
	methods: {
		load(tree, treeNode, resolve) {
			let parentId = tree.id;
			listCustomerPackageConsumeChildren(parentId).then((response) => {
				// 在节点展示加载数据时记录treeNode节点
				this.map.set(parentId, {tree,treeNode,resolve});
				resolve(response.data);
			});
		},
		
		
		// 在新增、编辑、删除子节点时,通过父级id找到对应的treeNode,重新加载子节点列表,完成数据刷新
		refresh(parentId) {
			if(this.map.get(parentId)) {
				const {tree,treeNode,resolve} = this.map.get(parentId);
				if(tree) {
					this.load(tree, treeNode, resolve);
				}
			}
		},
		
		
		updateTable(){
			//.....to do....
			// 刷新表格懒加载数据
            this.refresh(你的id);
		}
		
		
	}
}
相关推荐
月空MoonSky几秒前
解决使用Notepad++出现异型字或者繁体字体问题
java·javascript·notepad++
joan_8534 分钟前
input禁止自动填充
前端·elementui·vue
研☆香38 分钟前
简单的复选框 全选 反选功能
javascript
林间风雨38 分钟前
layui 2.9.16 版本,根据字段字数最大数,表格自适应字段宽度
前端·javascript·layui
hzb666661 小时前
xd_day47文件上传-day55xss
javascript·学习·安全·web安全·php
木子啊1 小时前
HTML防窥技巧:让源码难以偷窥
前端·html·查看源码·禁止查看源码
计算机学姐1 小时前
基于SpringBoot的在线骑行网站系统
java·vue.js·spring boot·后端·mysql·spring·tomcat
梦6501 小时前
前端路由守卫:掌控页面跳转的 “守门人”
前端
jiayong231 小时前
前端性能优化系列(二):请求优化策略
前端·性能优化