I’m making an app in which I’m trying to save data in the local storage of the phone. I’m using async storage for that but when I try to save a different value with a different key it just updates. Need help, please. Below is my read and write code.
const storeData = async () => {
try {
let id = (Math.random() + 1).toString(36).substring(7);
var id33 = id;
const jsonValue = JSON.stringify(region);
await AsyncStorage.setItem(id33, "Andres");
} catch (e) {
// saving error
}
};
const fetchAllItems = async () => {
try {
const keys = await AsyncStorage.getAllKeys();
const items = await AsyncStorage.multiGet(keys);
alert(items);
} catch (error) {
console.log(error);
}
};
Thank you and sorry for bothering you.
Advertisement
Answer
Before I start console.log(e) your errors in try catch blocks when coding. Will save you time
I made a copy of your code based on the info you gave me, and everything works . Full example here (https://snack.expo.dev/dYwSij6kV) Click Editor
on the very bottom then turn on panel
and then click on logs
to see the output.
I got the output so it is showing multiple keys.
►1:["tbl6ai","Andres"]
►2:["vd73b","Andres"]
►3:["uemcr","Andres"]
►4:["n5kie","Andres"]
►5:["EXPO_CONSTANTS_INSTALLATION_ID","3c2eee1f-f917-40ce-a9e6-ce73f83183b6"]
►6:["8a1cd","Andres"]
►7:["1d40y","Andres"]
I recommned going through every line of your code where you use async storage to see if your missing something. If that still doesn’t fix it delete your node_modules
and package-lock.json
and run npm install
.