你好,我在react native应用程序上合并大数组时遇到了问题,我试图在react native上做一个无限滚动,问题是当数组的长度为500+项时每次我添加更多的项目我的js线程冻结像一秒钟
这是我用来合并状态和新项目的代码
setData(prev => prev.concat(result));
哪一种是最好的方法?
编辑:我没有同时渲染500个项目,我使用一个名为react-native-large-list的库,该库在后台对视图进行所有优化和回收。
Array.concat
创建一个新的数组,将所有的值和对象引用复制到新的数组中。这意味着,如果你有一个包含500个元素的数组,并且你想再添加500个元素,你必须再分配1000个元素到内存中。
你最好把你的新项目添加到现有的数组:
prev.push(...result)