J'utilise AsyncStorage
dans mon React Application native pour stocker des informations sur l'utilisateur. La fonction getItem()
est asynchrone et m'oblige à implémenter un rappel lorsque je souhaitez charger des données à partir du système de stockage.
AsyncStorage.getItem("phoneNumber").then((value) => {
this.setState({"phoneNumber": value});
}).done();
Étant donné que la récupération d'une valeur à partir du stockage ne prend pas longtemps, je voudrais attendre la fin de l'opération avant de poursuivre l'exécution.
Est-il possible de charger des données d'une manière qui n'est pas asynchrone? Sinon, existe-t-il un moyen simple pour moi d'attendre la fin de l'appel de getItem()
pour poursuivre l'exécution?
Vous pouvez essayer soit d'ajouter un puis votre getItem
.
AsyncStorage.getItem("phoneNumber").then((value) => {
this.setState({"phoneNumber": value});
})
.then(res => {
//do something else
});
Ou utilisez attendre pour attendre l'opération async
pour terminer
var value = await AsyncStorage.getItem(STORAGE_KEY);
//use value to do something else.
essayez cette option et vous n'aurez pas le
Erreur de syntaxe: Await est un mot réservé
async getData() {
return await AsyncStorage.getItem("@App:KEY");
}