web-dev-qa-db-fra.com

React-Native: enregistrez les préférences de l'utilisateur

Développeurs natifs,

J'ai beaucoup cherché mais je n'ai rien trouvé qui corresponde à mes besoins.

Je suis nouveau pour réagir natif et j'ai une question. Je me demande comment enregistrer les préférences utilisateur de mon application.

Par exemple, j'affiche un badge licenciable sur mon écran -> l'utilisateur le rejette -> comment enregistrer cette décision pour que le badge n'apparaisse plus à chaque redémarrage?

J'ai pensé à écrire un fichier .json où toutes les préférences sont définies et à le lire à chaque démarrage.

Est-ce une façon courante de le réaliser ou existe-t-il une autre solution.

Merci beaucoup

6
floriantaut

Il existe de nombreuses options, mais la plus courante que vous pouvez utiliser React Native, built-in AsyncStorage.

Exemple de code

import { AsyncStorage } from "react-native";

storeData = async () => {
  try {
    await AsyncStorage.setItem('@MySuperStore:key', 'I like to save it.');
  } catch (error) {
    // Error saving data
  }
}

retrieveData = async () => {
  try {
    const value = await AsyncStorage.getItem('TASKS');
    if (value !== null) {
      // We have data!!
      console.log(value);
    }
   } catch (error) {
     // Error retrieving data
   }
}

en savoir plus sur https://facebook.github.io/react-native/docs/asyncstorage.html

Ou vous pouvez reconsidérer la bibliothèque tierce comme:

https://github.com/kevinresol/react-native-default-preference

https://github.com/mCodex/react-native-sensitive-info

1
I Putu Yoga Permana