问题标签 [asyncstorage]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1179 浏览

react-native - React Native 的 AsyncStorage 可能失败的案例有哪些?

React Native 提供该AsyncStorage库作为在 RN 应用程序中存储持久数据的一种方式。一般来说,AsyncStorage 使用起来非常简单,除了一个方面:

两个主要AsyncStorage功能,AsyncStorage.getItemAsyncStorage.setItemreturn Promises。这很容易理解:函数的实际查询或保存在后台运行,获取或保存项目可能会失败,需要我们catch出错。

但是,似乎 React Native 文档中没有任何地方具体说明调用orAsyncStorage时应该预期的失败情况或错误。当然,可以推断出一些错误情况:一个可能尝试使用不存在的密钥,或者一个可能尝试使用完整或几乎完整的存储,并且操作系统可能拒绝为您释放更多磁盘空间应用程序,但没有完整列表令人沮丧。setItemgetItemgetItemsetItem

很高兴知道究竟如何AsyncStorage如何失败的,这样开发使用数据持久性的 React Native 应用程序的人可能会确切地知道他们需要处理哪些失败情况。

0 投票
1 回答
219 浏览

react-native - 从使用 redux-thunk 和 AsyncStorage 获取响应

我正在使用 react-native、redux-thunk、jwt 和 AsyncStorage 来验证和定位该项目中的用户。似乎请求从 axios 转到后端,但我在 chrome 控制台中没有看到返回的响应('in axios' 和 '?' 没有显示),我不知道我的代码可能出了什么问题。

在我的行动/userAuth.js

以前有没有人遇到过这种问题,或者有人知道这段代码中的问题是什么以及如何调试它?

将不胜感激任何建议或答案。

谢谢你。

0 投票
1 回答
1636 浏览

react-native - 为什么在使用 AsyncStorage 时出现“_reactNative.AsyncStorage.setItem 不是函数”错误?

AsyncStorage在 React Native 中使用,但我的问题总是出错

_reactNative.AsyncStorage.setItem 不是函数

我什么时候用AsyncStorage.setItem

这是一些代码

在此处输入图像描述

并出现错误:( 在此处输入图像描述

更新:问题解决了。 您不应该使用 react-native 的任何组件的相同名称来命名您的项目

0 投票
2 回答
2525 浏览

react-native - 从 React Native 中的 AsyncStorage 获取项目

我有一份 React Native 公司的名单。

当我单击其中一家公司时,我会获得用于所选公司的 API 的 URL。然后我将其存储到AsyncStorage然后显示登录屏幕。功能如下:

然后在登录页面上,如果我点击sign in按钮,我会转到该onLogin功能,功能如下:

并且data.url来自data.js文件,我尝试url从data.js文件中获取如下:

但它不起作用。有什么建议吗?

0 投票
0 回答
1646 浏览

database - React Native 本地存储最佳实践

我正在开发一个反应本机应用程序,我需要将一些数据存储到设备上的本地存储中。当然你有很多包可以帮助解决这个问题,但看起来存储是使用键值对完成的。

我想知道在 react-native 应用程序上实现一些结构化存储的最佳实践是什么?

例如我要保存的东西是:

将这些存储在基于键值的存储系统中的最佳实践是什么。

如果我想要一个类似文件夹的结构,我可以存储为:

我可以将密钥命名约定为“ {folders}/{file}”,例如密钥可以称为:' photos/album1/photo1.jpg'。并且该值可以是图像的base64编码;但是在大型团队中使用这样的字符串名称,可能很难维护这样的命名约定,因为键名可以是任何字符串。

那么其他人是如何实现复杂的本地存储数据结构的呢?

0 投票
1 回答
436 浏览

database - React Native [iOS] 数据库选项

我正在寻找在 React Native 中创建一个 iOS 应用程序,并想知道适合我的应用程序的最佳数据库选项是什么。

该应用程序将由大约 300 个数据对象支持,这些数据对象将从远程服务器作为 json 对象获取。这 300 个对象的属性存在一些差异。因此,我对设置不灵活的数据库模式犹豫不决。

理想情况下,我只想要 1 个具有 2 个属性的数据库:1)id(例如:从 1 到 300)2)数据(例如:{“hello”:“world”})

给出以上内容,关于我应该使用什么样的 react-native 数据库模块有什么建议吗?

谢谢

0 投票
4 回答
20965 浏览

javascript - 如何检查 React Native 中的 AsyncStorage 中是否存在密钥?getItem() 总是返回一个承诺对象

我正在尝试检查密钥是否AsyncStorage可用AsyncStorage.getItem('key_name')。如果密钥不可用,它不会返回 null,它仍会返回以下 promise 对象:

我获取数据的功能如下:

如何检查 AsyncStorage 中是否存在密钥?

0 投票
1 回答
2168 浏览

react-native - AsyncStorage 不返回回调

redux-persist在一个 react native 项目中使用,它在除 Android 7 之外的大量设备中运行良好。我正在尝试调试为什么我的本地存储也不持久的问题,并发现了这一点:

以下代码在 React Native 组件生命周期内执行

'Inside setInterval' 之后的代码永远不会被调用。如果在 setInterval 之外,它只会运行一次。如果我在 setInterval之外调用一次代码,它似乎运行得很好。我也尝试过回调格式与异步/等待版本,但这似乎并不重要。

我在使用 firebase js 库时遇到了同样的问题(回调在第一个之后永远不会返回)。我现在正在寻找解决问题的替代方法。

有任何想法吗?

0 投票
1 回答
1206 浏览

javascript - React Native fetch 仅在第二次或第三次尝试时返回

我有一个使用 AsyncStorage 在本地保存的参数的提取。但是我的 fetch 只在第二次或第三次尝试时返回数据,所以当我尝试在我的渲染上映射数据时,它说它不能映射未定义的数据。

这是我的 AsyncStorage 和获取代码:

这就是我在控制台上得到的:

在此处输入图像描述

0 投票
1 回答
5411 浏览

javascript - React Native AsyncStorage 保存多个项目

是否可以使用 AsyncStorage 保存具有相同密钥的多个项目?我有一个可以添加到收藏夹的多个项目的 ListView,当用户按下“添加到收藏夹”按钮时,它会执行以下代码:

但如果我想添加另一个项目,它将替换前一个项目。如何使用相同的密钥添加多个?所以我可以在收藏夹屏幕上调用这段代码:

我知道我可以使用领域进行数据管理,但我发现它比 AsyncStorage 更难。