我需要使用asyncStorage
使用React Native Android从本地存储中检索对象。我正在使用此方法设置对象:
export const writeParsedContactsToStorage = async (parsedContacts) => {
try {
await AsyncStorage.setItem('@parsed_contacts', JSON.stringyfy(parsedContacts))
} catch (error) {
console.log(error);
}
}
然后尝试使用以下方法找回它:
export const getParsedContactsFromStorage = async () => {
try {
const parsedContacts = await AsyncStorage.getItem('@parsed_contacts');
console.log(JSON.parse(parsedContacts));
return parsedContacts;
} catch (error) {
console.log(error);
}
}
但是,当我仅使用JSON.parse()
方法时,就会收到错误消息:
Unexpected token o in JSON at position 1
在没有JSON.parse()
的情况下,返回的对象如下所示:
[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]...........
如何以原始格式从存储中取出对象?
谢谢
答案 0 :(得分:0)
我不知道“ parsedContacts”数据是什么。但是,如果您得到的是,请分割数据并剪切。
export const getParsedContactsFromStorage = async () => {
try {
const parsedContacts = await AsyncStorage.getItem('@parsed_contacts');
const splitdata = parsedContacts.split(',');
splitdata.map( (data, index) => console.log(JSON.stringyfy(data)) );
} catch (error) {
console.log(error);
}
}