kld
kld
  • 发布:2025-10-31 08:31
  • 更新:2025-10-31 11:03
  • 阅读:56

iOS加载更多,修改数据源,iOS崩溃,安卓正常

分类:uni-app x
// 加载更多  
    function loadMore () {  
        // 1.找到当前最后一个文件夹  
        let lastIndex = 0  
        const lastResult = resultList.value[resultList.value.length - 1]  
        for (let i = 0; i < folderList.value.length; i++) {  
            const name = folderList.value[i]  
            if (name == lastResult) {  
                lastIndex = i  
                break  
            }  
        }  

        console.log(`${lastIndex + 1} -- ${lastIndex + pageSize + 2} -- ${folderList.value.length}`);  

        // 2.再次从整体数据当中截取一定数据  
        const array = folderList.value.slice(lastIndex + 1, lastIndex + pageSize + 2 <= folderList.value.length ? lastIndex + pageSize + 2 : folderList.value.length)  
        console.log(array);  
        // 3.将数据拼接到结果(渲染)列表中  
        resultList.value = [...resultList.value, ...array]  
    }

我在使用这个方式修改这个resultList数据源的时候,iOS总是崩溃,安卓倒是没问题,拿到ips,分析原因就是说数据源不一致,但是这样子更新有什么问题么,我是一次性获取了全部的数据,但是显示是分批显示的,这样是为了减少渲染压力,我在加载的时候我会从整体数据再截取一段数据出来赋值给数据源,但是为什么iOS会崩溃呢,好急,主要问题就是这一行resultList.value = [...resultList.value, ...array]

2025-10-31 08:31 负责人:无 分享
已邀请:
DCloud_iOS_XHY

DCloud_iOS_XHY

请提供复现问题的示例工程,用最简单最小化的代码说明问题,可排除其他代码影响同时省去复现问题还要理清代码逻辑时间,也方便快速定位问题,uniapp x 项目的话请在 issues 平台提bug

  • kld (作者)

    https://issues.dcloud.net.cn/pages/issues/detail?id=22861我有提供所有详细代码,示例工程,复现视频,详情看这个issuse

    2025-10-31 11:19

  • DCloud_iOS_XHY

    回复 kld: 问题已处理,下次发版会修复

    2025-10-31 17:37

要回复问题请先登录注册