ElementUI表格懒加载子级更新数据刷新不生效问题

问题:

在更新上级的时候没有问题,但是在更新子级表格数据没有更新!

方案:

把加载的子节点信息存起来,更新的时候重新拉取字节点数据!

javascript 复制代码
let nodeMap = ref<Map<string, any>>(new Map());

完整代码

javascript 复制代码
    let tableInfo = ref<TableInfo<any>>({
        data: [],
        total: 0
    });
    let nodeMap = ref<Map<string, any>>(new Map());
    const lazyLoadTreed = async (row  : any, treeNode  : any, resolve : (data: Zone[]) => void) => {
        if(!treeNode) {
            let res = await lazyLoadTree(query.value);
            if(res.code == 200) {
                tableInfo.value.data = res.data;
            }
        }else {
            let res = await lazyLoadTree({
                keyWord: '',
                page: true,
                keyId: row.id
            });
            if(res.code == 200) {
                nodeMap.value.set(row.id, { row , treeNode , resolve });
                resolve(res.data);
            } else {
                resolve([] as Zone[]);
            }
        }
    }

    async function refreshNode(parentId : string) {
        const nodeInfo = nodeMap.value.get(parentId);
        if (nodeInfo) {
            const {  row, treeNode , resolve } = nodeInfo;
            lazyLoadTreed(row , treeNode, resolve);
        }
    }


    function update() {
        // 调用
        refreshNode('你的父级id');
    }
相关推荐
wy3136228212 小时前
C#——意框架(结构说明)
前端·javascript·c#
研☆香2 小时前
JS中的三种显示弹窗
开发语言·前端·javascript
俩毛豆2 小时前
HarmonyOS APP开发-一文讲清使用Web组件加载网页的三种方法-《精通HarmonyOS NEXT :鸿蒙App开发入门与项目化实战》读者福利
前端·华为·harmonyos
猛扇赵四那边好嘴.2 小时前
Flutter 框架跨平台鸿蒙开发 - 问答社区应用开发教程
开发语言·javascript·flutter·华为·harmonyos
C_心欲无痕2 小时前
Next.js 路由系统对比:Pages Router vs App Router
开发语言·前端·javascript
LawrenceLan2 小时前
Flutter 零基础入门(二十二):Text 文本组件与样式系统
开发语言·前端·flutter·dart
hxjhnct2 小时前
JavaScript 的 new会发生什么
开发语言·javascript
狗都不学爬虫_2 小时前
JS逆向 - 最新版某某安全中心滑块验证(wasm设备指纹)
javascript·爬虫·python·网络爬虫·wasm
运筹vivo@2 小时前
攻防世界:Web_php_unserialize
前端·web安全·php