如何在Asyncstorge中设置多个值?因为我正在尝试设置token
和user_id
。这些是服务器响应值。
这就是响应的样子
json
{ error: 0,
data: 'User registered Successfully',
userData:
{ pwd: 'lmlmlm',
phone_no: '9898989',
user_name: '',
status: 1,
date: 2018-10-24T07:12:20.656Z },
user_id: 60,
token: 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.' }
在响应本机后,我在用户注册后就这样写了。
.then((response) => response.json())
.then((responseData) =>
{
console.log(responseData);
AsyncStorage.setItem('id_token', responseData.token),
AsyncStorage.setItem('user_id', responseData.user_id),
Actions.firstScreen();
});
在我的主页中,我以
的方式访问token
中的user_id
和AsyncStorage
AsyncStorage.getItem('id_token').then((usertoken) =>{
this.setState({'id_token' : usertoken});
console.log(usertoken);
})
AsyncStorage.getItem('user_id').then((uid) => {
this.setState({'user_id': uid});
console.log(uid);
})
但是我只得到令牌,uid
的控制台结果为null。但是当我控制台responseData
时,我在其中包含值。请帮助我
答案 0 :(得分:3)
请通过link
查看此文档所以您可以这样使用:
设置项目:
AsyncStorage.multiSet([['k1', 'val1'], ['k2', 'val2']], () => {
//to do something
});
加油!
答案 1 :(得分:0)
var items = [['k1', 'val1'], ['k2', 'val2']]
AsyncStorage.setItem("KEY", JSON.stringify(items))