首页 > 解决方案 > React Native - FlatList 的应用程序性能问题?

问题描述

我完成了我的应用程序,react native但在构建缓慢之后。然后我开始研究以提高应用程序的性能。我在官方网站上找到了这个文档react native,我相信这会对我有所帮助,但我无法理解。请任何人都可以用简单的话说出以下文档在说什么:

如果您使用的是不可变数据结构,这将与引用相等检查一样简单。

同样,您可以实现 shouldComponentUpdate 并指明您希望组件重新渲染的确切条件。如果您编写纯组件(其中渲染函数的返回值完全依赖于 props 和 state),您可以利用 PureComponent 为您执行此操作。再一次,不可变的数据结构对于保持这种速度很有用——如果您必须对大量对象进行深入比较,那么重新渲染整个组件可能会更快,而且肯定需要更少的代码.

我会很高兴。谢谢 !!!

标签: reactjsreact-nativereact-native-flatlist

解决方案


如果您使用的是静态对象,则可以像上面所说的那样将组件渲染为 PureComponent。然后,您可以传递它的道具或使用您想要显示的单词设置状态。

当您这样做时,FlatList 将仅重新呈现它需要的数据部分,具体取决于更改的内容。它的最后一部分是说 PureComponent 进行浅比较 - 如果数组中的某些内容发生更改,但数组本身没有更改,那么您的 FlatList 将不会更新。但是,对于不可变对象,您始终可以将其声明为 PureComponent,并且应该更快。


推荐阅读