Je suis très nouveau dans React. Je peux voir le bon résultat avec la fonction suivante en utilisant console.log (), mais comment puis-je enregistrer le résultat (c'est un nombre, pas un tableau), dans une simple variable.

firestore.collection('games').where('user_ide', '==', uid).get().then( (snapshot) => 
    console.log(snapshot.docs.length),
    );

Merci beaucoup.

0
Agustin Rodrigues 28 août 2020 à 15:31

2 réponses

Meilleure réponse

Vous voudrez peut-être mettre le résultat dans un état. Par exemple avec des crochets

  const [state, setState] = useState("");


firestore.collection('games').where('user_ide', '==', uid).get().then( (snapshot) => 
console.log(snapshot.docs.length),
 setState(snapshot.docs.length)
);

Maintenant, le résultat sera dans la variable d'état.

0
Jonathan Akwetey Okine 28 août 2020 à 12:35

Utilisez-vous des États? si c'est le cas, ce que vous pouvez faire est d'initialiser les états ci-dessus comme ceci:

  const [
        snapShot,
        setSnapShot,
    ] = useState()

Et utilise

firestore.collection('games').where('user_ide', '==', uid).get().then( (snapshot) => 
    setSnapShot(snapshot.docs.length),
    );

Si vous ne pouvez pas utiliser un état quelque part, utilisez simplement

let snapShot 
firestore.collection('games').where('user_ide', '==', uid).get().then( (snapshot) => 
        snapShot= snapshot.docs.length
        );
0
Dharman 28 août 2020 à 12:41