react-native - 我应该对大量数据使用 AsyncStorage 吗?
问题描述
我们希望为我们的 react-native 应用程序实现离线模式。我们将处理大量数据(大约 40-50mb)。它是一个近似数组。16000 个对象。据我所知,有两种方法可以保存这些数据。
使用 AsyncStorage - android 有 6mb 的限制,但我在某处读过,它可以增加。
使用 json 文件 - 使用react-native-background-downloader将该数据下载为 json 文件,然后使用react-native-fs保存并在用户没有连接到互联网时加载它。
我个人认为第二种选择更好,即使它需要文件存储权限。
我是否遗漏了其他需要考虑的因素?还有其他离线访问选项吗?
解决方案
最后选择退出使用 json 文件,因为 android 存在限制。在加载应用程序时,我获取这些数据并将它们加载到 mobX 存储中的变量中。其功能与任何变量相同。我担心手机会对数组中的 16000 个对象进行排序有问题,但到目前为止还没有关于这件事出错的报告。(现在生产4-5个月)
所以基本上当你点击“启用离线模式”时,我会询问文件存储权限并使用 react-native-fs 下载文件。然后在应用程序的下一次启动时,我只是从 JSON 文件中读取数据。
推荐阅读
- azure - 无法从逻辑应用查看 Azure Functions
- if-statement - if 语句与值匹配
- ruby - 如何修复服务器上 Sinatra 的损坏依赖项
- reactjs - 如何获取具有更改参数的 URL 的 API
- javascript - Tumblr 默认点赞按钮不呈现“点赞”
- scala - 重写 LogicalPlan 以从聚合中下推 udf
- sql-server - 如何使用 EF Core 在 Visual Studio 中为 SQL Server 数据库视图建模?
- python - 为什么类中定义的函数在其他代码片段中不可见?
- mysql - 如何在 php myqsl 中按年龄创建员工分组
- apache-kafka - 在 JAAS 配置中找不到“KafkaClient”条目