Estoy usando Expo y Firebase para crear una aplicación. Actualmente estoy usando este código para obtener la información del perfil del usuario:
async function getUserInfo(){ try { let doc = await firestore .collection('users') .doc(auth.currentUser.uid) .get(); if (!doc.exists){ alert('No user data found!') } else { let dataObj = doc.data(); alert(dataObj.FullName); } } catch (err){ alert('There is an error.', err.message) } }De esta manera, funciona. Se muestra la alerta. Sin embargo, estoy tratando de mostrar el valor de esta manera
<Text>Name: {here_some_variable_for_name}</Text>Esto es lo que he probado:
const [fullName, setFullName] = useState('') async function getUserInfo(){ try { let doc = await firestore .collection('users') .doc(auth.currentUser.uid) .get(); if (!doc.exists){ alert('No user data found!') } else { let dataObj = doc.data(); setFullName(dataObj.FullName); } } catch (err){ alert('There is an error.', err.message) } } getUserInfo();Después de agregar la línea "const [fullName, setFullName] = useState('')", el código de repente no funciona. Al probarlo en el navegador web, la página está en blanco.
Ninguno de estos ha funcionado. Definitivamente, los datos se reciben correctamente, pero la parte de visualización no funciona.
Encontré la solución: había olvidado importar useState, lo hice y funcionó.