小编san*_*ang的帖子

如何在应用程序本身中进行昂贵的操作,例如在反应本机中搜索大列表?

我有一个包含 10000 条记录的 json,需要在 Flatlist 中显示。我正在使用工作正常的虚拟化列表。现在我有某些过滤器,单击后应过滤掉 json 并使用新数据重新渲染列表。我只是过滤掉数据。

const filters = foo1;
const largeList = [{ id:1, foo:'foo1',bar:10 },{id:2, foo:'foo1',bar:20} ...]
const filteredList = largeList.filter(l=>l.foo === filters && l.bar > 10);
Run Code Online (Sandbox Code Playgroud)

过滤器是动态的,这会滞后于我的应用程序,因为它会给 UI 线程带来压力。我已经使用了InteractionManager.runafterinteractions()但在这种情况下不起作用。如何在应用程序中执行如此昂贵的操作而不阻塞 UI 线程?

ui-thread react-native react-native-flatlist

5
推荐指数
1
解决办法
592
查看次数