React Native - FlatList - 内部状态

React Native - FlatList - Internal State

我正在使用 FlatList 以在我的 react-native 应用程序中实现 Store 视图。

我正在从组件的 componentDidMount 循环步骤中完成的 API 调用中检索商店项目,然后将其存储在本地 state.

我在 Flatlist 文档中找到了这句话:

Internal state is not preserved when content scrolls out of the render window. Make sure all your data is captured in the item data or external stores like Flux, Redux, or Relay.

我想知道这是什么意思。我只是在使用我的本地状态,它似乎工作得很好。 这样做有什么问题吗?您能否提供有关此特定点的更多信息?

此外,如果您对我的用例有任何建议或优化,请随时添加。

感谢您的宝贵时间。

假设您有一个 Contacts 组件,数据中的每个项目都有一个 FlatList 呈现 Contact 组件。我们还假设这些联系人是 selectable。如果您将这些 select 值(例如 selected: true)存储在 Contact 组件内部状态而不是 Contacts 组件状态,当项目滚动出来时它将被卸载并且该项目的状态将被重置。如果您将其保存在全局数据中,它将使用最后一个状态创建。

希望我能解释清楚。