react-native - 如何在 ReactNative 中使用异步存储
问题描述
我在 ReactJS 中制作了本地存储,效果很好。
但我想将此代码用于 React-native。
我很困惑如何申请
此代码属于 ReactJs。
...
componentWillMount(){
const contactData = localStorage.contactData;
if(contactData){
this.setState({
contactData:JSON.parse(contactData)
})
}
}
...
...
componentWillMount(){
const contactData = localStorage.contactData;
if(contactData){
this.setState({
contactData:JSON.parse(contactData)
})
}
}
...
我读了这个“ https://facebook.github.io/react-native/docs/asyncstorage.html ”
但我不太明白。
解决方案
对于 React-native 存储,您必须使用 AsyncStorage。react-native 中的上述代码将变为。
...
async componentWillMount(){
const contactData = await AsyncStorage.getItem('contactData');
if(contactData){
this.setState({
contactData:JSON.parse(contactData)
})
}
}
...
...
async componentWillMount(){
const contactData = localStorage.getItem('contactData');
if(contactData){
this.setState({
contactData:JSON.parse(contactData)
})
}
}
...
您可以使用 async-await 或 then/catch 承诺来处理数据。
推荐阅读
- python - 使用 Python 在 Azure Monitor 中获取订阅的所有活动警报
- android - 如何从 Android 调用 Rest API
- css - 如何定位页脚以使其位于页面底部?
- python - 为什么我得到名称 'shared_task' is not defined 芹菜错误
- python - Python“在字符串格式化期间并非所有参数都转换了”
- android - 如何在 Flutter 移动 App 中托管独立的 URL?
- css - Not able to style my otp component in vue
- java - 为什么我可以将 Arrays.asList 方法与为接口 List 声明的对象一起使用,但当它被声明为类 ArrayList 的实例时却不能?
- javascript - 点击后隐藏移动菜单 - Javascript
- python - 添加 groupby 对象的单个数据框的数字列的 Pythonic 方法