问题标签 [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.
react-native - 使用 React Native AsyncStorage 存储列表:多个键还是一个?
我想使用 AsyncStorage 存储项目列表。该列表将随着时间的推移而更新。
以下是列表可能处于的状态示例:
现在,似乎有两个选项可以存储此列表:
- 将每个联系人存储在自己的密钥下
- 将整个列表存储在一个键下
这两种方法都有优点——React Native 中首选的是什么?
react-native - react-native 存储如何工作?基本原则
我猜有一个简单的问题。react-native 存储是如何工作的?
它是否像浏览器上的 LocalStorage 一样工作?
例如。我想做一个简单的待办事项应用程序。所以我会将用户的待办事项保存在 AsyncStorage 中。
所以我只想知道
- 用户可以以某种方式删除我的数据吗?
- 存储创建一次到永远?每次启动应用程序时都会创建它?
谢谢!
react-native - AsyncStorage - multiSet() 是事务性的吗?
我有一个应用程序,我计划从服务器中提取一些数据,然后使用 AsyncStorage 存储这些数据。所以不需要不断地获取我的数据。我使用获取几个 json fetch()
,然后使用AsyncStore.multiSet()
.
但是,如果在 AsyncStorage 中存储我的大约 5 个 json 对象时出现问题,我不希望存储其中任何一个。使数据保持正确的状态。因此,我想使用交易存储它们。
那么如果在存储我的对象的过程中出现一些问题并且存储失败会发生什么。例如,如果应用程序被用户关闭或者他们的电池电量耗尽。
在这种情况下会发生什么?可以保存我的前 2 个对象而其他 3 个不保存吗?
react-native - 等待 AsyncStorage.getItem()
我AsyncStorage
在我的 React Native 应用程序中使用来存储有关用户的信息。该getItem()
函数是异步的,当我想从存储系统加载数据时需要我实现回调。
因为从存储中检索一个值不需要很长时间,所以我想等到操作完成后再继续执行。
是否可以以非异步的方式加载数据?如果没有,是否有一种简单的方法让我等到getItem()
通话完成才能继续执行?
async-await - React Native 等待 AsyncStorage 获取值
这是一个常见问题,React Native 试图在从 AsyncStorage 获取值之前进行渲染。我已经在几个地方看到了解决方案,但由于某种原因,它对我来说根本不起作用。也许是因为我使用的是 React Native 25.1?它只是无限期地卡在“正在加载...”上。如果我在渲染上运行控制台日志以显示 isLoading (没有if
方法)它会返回false
,然后true
理论上它应该可以工作。但是if
启用该方法后,它会永远停留在“正在加载”上,并且日志仅返回 false。
ios - React Native AsyncStorage 位置和使用
我是 React Native 的新手,我正在尝试掌握 AsyncStorage 的使用。我查看了文档并查看了一些可用的包装器,但找不到我的几个问题的答案。
如果我只需要添加一次此数据,那么将键值对添加到 AsyncStorage 的最佳方法是什么。除了我自己之外,用户不会添加数据。例如,我想添加键值对,其中键是一个项目,值是该项目的描述。描述可能有几段长。我是否需要构建一个组件来处理这些数据的添加/更新/删除?这就引出了我的第二个问题。
有没有地方可以查看 AsyncStorage 中的数据。我似乎找不到有关此数据位置的任何信息。应用程序或 xcode 中的某处是否有我可以查看和/或直接更新的文件?
react-native - 从 React Native 中的 Auth0 应用程序获取用户信息
我正在使用 Auth0 的 react-native-lock 小部件进行用户身份验证,成功登录后,我将令牌与 AsyncStorage 一起存储。
如果用户回到应用程序,我希望能够跳过登录并简单地从 Auth0 获取当前用户信息。从Auth0 API 文档来看,这似乎非常容易,但我在我的应用程序中收到了“未经授权”的消息:
我错过了什么?我找不到很多将 fetch 与 Auth0 一起使用的示例,我应该使用更好的方法吗?
authentication - 无法从 React Native 中的 AsyncStorage 返回令牌
我正在使用 React Native 的 AsyncStorage 来存储授权令牌,当需要用于新的 http 请求时将返回该令牌。虽然我可以成功存储它并控制台记录它,但我在返回值时遇到了一些麻烦。我想在另一个窗口中调用它,以
但是它不会起作用。
另一方面,这在 getAcessToken() 中有 console.log 时有效
^^^^这个函数成功保存了token
使用 return(value) 时无法返回值。如何从承诺中返回值?