how to get only the last document id in Firestore?
i tried
auth.onAuthStateChanged(user => { //set document from firestore var date=new Date(); var day=date.getDate(); var month=date.getMonth()+1; var year=date.getFullYear(); if (user){ db.collection('users').doc(user.uid).collection('orders').doc().set({ things:cart, orderState: "Order pending", date:day+'/'+month+'/'+year, }) //get document from firestore db.collection('users').doc(user.uid).collection('orders').doc().get() .then(snapshot => console.log(snapshot.id)) })
the result i’m getting wrong id thats not in the orders document!!
This is my documents :
Advertisement
Answer
You are running db.collection('users').doc(user.uid).collection('orders').doc()
twice which creates 2 different DocumentReferences and hence they are different. If you are trying to get the document that you just added try this:
if (user) { db.collection('users').doc(user.uid).collection('orders').doc().set({ things:cart, orderState: "Order pending", date:day+'/'+month+'/'+year, }).then((ref) => { console.log(ref.id) // ref.get() get document }) }
const ref = db.collection('users').doc(user.uid).collection('orders').doc() console.log("Doc ID:", ref.id) ref.set({...data}).then((snapshot) => { console.log(`Document ${snapshot.id} added`) // This ID will be same as ref.id })