Javascript React Native—如何使用异步存储优化应用程序性能

Javascript React Native—如何使用异步存储优化应用程序性能,javascript,optimization,react-native,asyncstorage,Javascript,Optimization,React Native,Asyncstorage,我正在使用React Native(版本0.46)开发一个应用程序,它可以执行一些操作,从一些资源中获取数据,渲染数据并存储数据,以便在internet连接不可用时显示 我的问题:我想看看是否最好采用下面提到的“新”计划,而不是现行计划。既然RN正在使用,它是否以Node.js那样的非阻塞方式运行代码?谢谢你的建议 当前: 1.应用程序将加载。 2.检查互联网连接(当然是异步连接)。 3.如果存在连接:首先,呈现缓存数据(如果存在),然后获取新数据。如果有internet连接但没有缓存数据,只需

我正在使用React Native(版本0.46)开发一个应用程序,它可以执行一些操作,从一些资源中获取数据,渲染数据并存储数据,以便在internet连接不可用时显示

我的问题:我想看看是否最好采用下面提到的“新”计划,而不是现行计划。既然RN正在使用,它是否以Node.js那样的非阻塞方式运行代码?谢谢你的建议

当前:
1.应用程序将加载。
2.检查互联网连接(当然是异步连接)。
3.如果存在连接:首先,呈现缓存数据(如果存在),然后获取新数据。如果有internet连接但没有缓存数据,只需获取新数据。
4.如果没有internet连接,请获取新数据,渲染并存储它


新建:与其等待internet可用性,我只需渲染缓存数据(如果可用)。这是一个更好的方法吗?还是有更好的。将redux持久化添加到应用程序

2。白名单所有需要修改的状态键 持续。

3。如果存在网络连接,则进行api调用 如果成功,则刷新状态

注意:我不得不延迟渲染(在redux persist的v4中),直到存储被重新水化,这在新版本中可能不需要

另一个解决方案可能是redux脱机模块:


如果您有大量数据,我会首先对缓存数据的呈现进行优先级排序。但这在很大程度上取决于应用程序的上下文。如果您的用户需要最后的数据,或者他可以等待,请将其保存。