我想将对象存储在异步存储中,然后要获得存储在对象中的不同值。
storeToken(responseData){
AsyncStorage.setItem(ACCESS_TOKEN, responseData, (err)=> {
if(err){
console.log("an error");
throw err;
}
console.log("success");
}).catch((err)=> {
console.log("error is: " + err);
});
}
我以这种方式存储。但是在获得特定值的同时,我只能获得一个值,而不能从对象中获得更多值。
答案 0 :(得分:2)
您必须对对象进行字符串化处理。
AsyncStorage.setItem(ACCESS_TOKEN, JSON.stringify(responseData), (err)=> {
if(err){
console.log("an error");
throw err;
}
console.log("success");
}).catch((err)=> {
console.log("error is: " + err);
});
阅读时,应该对其进行解析。
try {
const value = await AsyncStorage.getItem(ACCESS_TOKEN);
if (value !== null) {
// We have data!!
console.log(JSON.parse(value));
}
} catch (error) {
// Error retrieving data
}