I am a new developer with no experience in Web apps. I have a collection called “users” in Firestore in which the document IDs are the user’s emails. I am trying to read the data in one of the documents following the example provided by Firebase here
I get two errors:
- First one is the use of “await”: Uncaught SyntaxError: Unexpected reserved word.
- Second is this message: Uncaught TypeError: docSnap.exists is not a function at HTMLFormElement.
I bypassed the first one by ommiting “await”, but cannot avoid the second. Have you got any idea of what is wrong with my code?
console.log(docSnap) gives the following message: “Promise {pending}”
Thanks.
requestForm.addEventListener('submit', (event) => { event.preventDefault(); const user = auth.currentUser; const docSnap = await getDoc(doc(db, "users", user.email)); if (docSnap.exists()) { console.log("Document data:", docSnap.data()); } else { console.log("No such document!"); } })
Advertisement
Answer
Looks like you return a Promise
and it does not meet the requirements of async/await
. Try this way.
getDoc(doc(db, "users", user.email)).then(docSnap => { if (docSnap.exists()) { console.log("Document data:", docSnap.data()); } else { console.log("No such document!"); } })