我正在使用FlatList,以便在我的react-native应用程序中实现 Store
View .
我正在从我的组件的componentDidMount循环步骤中完成的API调用中检索商店项目,然后将其存储在我的本地 state
中 .
我在Flatlist文档中找到了这句话:
当内容滚出渲染窗口时,不会保留内部状态 . 确保在项目数据或外部存储(如Flux,Redux或Relay)中捕获所有数据 .
我想知道这意味着什么 . 我只是使用我的本地状态,它似乎工作得很好 . 这样做有什么问题吗?你能否就这一点向我提供更多信息?
此外,如果您对我的用例有任何建议或优化,请随意添加它们 .
谢谢你的时间 .
1 回答
假设您有一个
Contacts
组件,其中包含数据中每个项目的FlatList呈现Contact
组件 . 我们也说这些联系人是可选择的 . 如果将这些选择值(例如selected: true
)存储在Contact
组件内部状态而不是Contacts
组件状态中,则当项目滚动时,将其卸载并且该项目的状态将被重置 . 如果将其保存在全局数据中,则将使用最后一个状态创建它 .希望我能够解释 .