React Native提供 AsyncStorage 库作为在RN应用程序中存储持久数据的方法.通常,AsyncStorage使用非常简单,除了一个方面: 两个主要的AsyncStorage函数AsyncStorage.getItem和AsyncStorage.setItem都返回Promis
AsyncStorage
库作为在RN应用程序中存储持久数据的方法.通常,AsyncStorage使用非常简单,除了一个方面:
两个主要的AsyncStorage函数AsyncStorage.getItem和AsyncStorage.setItem都返回Promises.这很容易理解:函数执行的实际查询或保存在后台运行,项目的获取或保存可能会失败,需要我们捕获错误.
但是,似乎在React Native文档中没有任何地方指出AsyncStorage的失败情况或调用setItemor getItem时应该出现的错误.当然,可以推断出可能存在的一些错误情况:一个可能尝试使用不存在的密钥获取getItem,或者可能尝试将setItem设置为完整或接近完整的存储,操作系统可能会拒绝释放更多的磁盘空间对于你的应用程序,但没有一个完整的列表是令人沮丧的.
很高兴知道AsyncStorage可能会失败,因此开发使用数据持久性的React Native应用程序的人可能确切地知道他们需要处理哪些失败案例.
代码是开源的,您可以看到呼叫失败的时间,例如 here on android或 here for ios.getItem调用失败,例如在需要不存在的项时.其他示例可能是创建存储目录失败.您可以在ios模块中看到(例如,当设备上没有足够的空间时).