react-native - 什么是 AsyncStorage *for*?
问题描述
我可以找到有关如何编写对 AsyncStorage 的调用、它如何在设备上实际存储信息等的信息,以及一些使用存储密钥的基本示例,但我正在寻找的是对我为什么要使用它的更广泛的理解。
我问的原因是我最近不得不重构我们(react-native)移动应用程序的一个区域,该区域存在错误并且 - 并非无关!——变成了一只深不可测的野兽。它以前是一个巨大的单一类,在它的 componentDidMount/unMount 中调用了 AsyncStorage,它在其中存储了一些状态变量。
(从评论来看,至少部分原因与之前的开发者在理解如何在 FlatList 中使用/访问状态有关,但我认为不仅仅是这样)
重构后的代码通过几个独立的功能组件实现了与以前相同的目标,每个组件执行特定的任务。FlatList 调用的所有内容现在都是无状态的,并且刚刚完成测试,之前的所有功能似乎都已匹配。
但是,我意识到我没有使用任何对 AsyncStorage 的调用,我想知道这是否是一件坏事?我可以想象我可以将应用程序这一部分的所有状态存储到 AsyncStorage 中,这样如果它崩溃了,我们就可以跳回到我们到达的任何位置。而且我认为这可能很方便。但这是对异步存储的合理使用吗?你们都用它吗?以前的用例是不是很糟糕,没有它我应该继续前进吗?
(我很欣赏这个问题比我通常寻找/询问的问题更概念化,如果我应该把它放在其他地方,请说!)
解决方案
推荐阅读
- mysql - How to verify if all the queries inside a test.sql file are executed successfully through shell script?
- python-3.x - 如果任何 Datanode 驱动器(存储)失败,如何在 Hadoop 集群中检测
- python - 无法使用节点读取python中的文件
- node.js - “超自然现象”!要求和导入异步工作
- .htaccess - 如何在没有 IIS 的情况下将 .htaccess 转换为 web.config
- react-native - 如何使用反应原生路由器通量在反应原生中保存组件的历史记录
- reactjs - 仅应在新元素上调用使用数组作为依赖项的 useEffect 中的数据
- css - CSS Content 属性在 safari 上不起作用
- android - 如何在连接到 MS SQL 的 ListView 的每一行中添加单击侦听器(按钮)?
- android - 颤振-如何延迟ListView,因此项目一项一项显示