如何在react-native中使用AsyncStorage保存一个Items数组?因此,每次将其他联系人添加到列表时,它都会不断添加而不是重写
代码:
saveContacts = ()=> {
try {
let con = {
roomId: this.state.roomId,
nickname: this.state.nickname,
}
AsyncStorage.setItem('contacts', JSON.stringify(con));
}catch(error) {
alert(error)
}
}
答案 0 :(得分:7)
您可以检索联系人并将新联系人连接到列表,然后将其重新设置为存储。只需确保最初将其设置为空数组:
FD_Remove
答案 1 :(得分:1)
获取并将记录设置为数组,然后保存到AsyncStorage:
saveContacts = async () => {
try {
let con = {
roomId: this.state.roomId,
nickname: this.state.nickname,
}
const contacts = await AsyncStorage.getItem('contacts') || '[]';
contacts = JSON.parse(contacts);
contacts.push(con);
AsyncStorage.setItem('contacts', JSON.stringify(contacts)).then(() => {
console.log('Contacts updated.')
});
} catch(error) {
alert(error)
}
};