Uso componentDidMount para iniciar fetchNewUser cuando navego a la pantalla, se supone que debe reconocer a un nuevo usuario y actualizarlo si es cierto, el problema es que cuando navego en la pantalla por primera vez devuelve undefined is not an object (evaluating 'snapshot.data().newUser') , pero si actualizo la pantalla, funciona.
fetchNewUser = async () => { const fetchInformation = doc(db, 'path') await getDoc(fetchInformation) .then( async (snapshot) => { const newUser = await snapshot.data().newUser const address = await snapshot.data().mainAddress console.log(newUser) if (newUser == true || newUser == undefined) { this.props.navigation.navigate('AddressSearch') updateDoc(fetchInformation, { newUser: false }) } else { this.setState({address: address}) } }) .catch((err) => console.log(err)) }El problema es que está intentando acceder a newUser en la promesa, lo que debe hacer en su lugar es const newUser = (await snapshot.data()).newUser