javascript - AsyncStorage 不存储数据
问题描述
我已经查看了有关 asyncStorage 的文档,但不明白为什么它没有保存我的数据。我将 Laravel 用于 API 和 Vue native(react-native 的包装器)。当用户注册时,我通过这种方式生成的令牌
import AsyncStorage from '@react-native-async-storage/async-storage';
...
handleRegister() {
axios.post('/api/mobile-register', this.formData).then(response => {
console.log(response.data);
var token = response.data
async(token) => {
try {
await AsyncStorage.setItem('@user_Token', token)
} catch (e) {
// save error
}
console.log('Done.')
}
console.log('User Registered!');
}).catch(error => console.log(error));
},
令牌返回并作为字符串记录,用户已注册,但令牌未保存。我试图在挂载的钩子中使用它检查保存的令牌并附加到一个按钮,但它返回 null
astore(){
AsyncStorage.getItem('@user_Token').then((res) => console.log(res))
},
我怎样才能正确地做到这一点?
解决方案
删除不存在的匿名函数并简单地将回调设为异步函数会更有意义:
axios.post('/api/mobile-register', this.formData).then( async response => {
console.log(response.data);
var token = response.data
try {
await AsyncStorage.setItem('@user_Token', token)
} catch (e) {
// save error
}
console.log('Done.')
console.log('User Registered!');
}).catch(error => console.log(error));
推荐阅读
- google-colaboratory - 为什么 Colab 停止训练并且浏览器变得无响应?
- asp.net - 尝试在视图 ASP.NET MVC 中显示视图模型中的数据时出现空异常
- django - __init__() takes 1 positional argument but 8 were given
- python - Numpy直方图数据:为什么bins向量的长度比直方图值向量长?
- python - 来自函数的访问列表
- deep-learning - 在 Pytorch 上连接 googlenet 的分支(不同维度)
- python - 为什么我的 print() 输出打印在两行上?
- sql - SQL删除除了选择结果
- c# - 使用类库项目从 JSON 文件中读取数据
- asp.net-core - 从 Swagger Doc 中删除 AspnetVersioning ApiVersion