Soy nuevo en Firestore y las funciones asíncronas. La siguiente función está en servicio angular:
async verifyCredentials(loginFormData:any) { const q = query(collection(db, "users"), where("mobile", "==", loginFormData["mobile"]), where("email", "==", loginFormData["email"])); const querySnapshot = await getDocs(q); //console.log("data is:", querySnapshot.docs[0].data()); return querySnapshot.docs[0].data(); }Estoy llamando a la función anterior para obtener datos en un componente:
onSubmit() { this.submitted = true; if (this.loginForm.invalid) { return; } if(this.submitted) { console.log(this.userService.verifyCredentials(this.loginForm.value)); //this.router.navigate(['/menu']); } }A continuación se muestra la salida de la consola:
Funcionó. Olvidé por completo usar .then
onSubmit() { this.submitted = true; if (this.loginForm.invalid) { return; } if(this.submitted) { this.userService.verifyCredentials(this.loginForm.value).then( data => { console.log(data); }); //this.router.navigate(['/menu']); } }