3 回答

TA貢獻1808條經(jīng)驗 獲得超4個贊
如果您將 FirestoreRecyclerAdapter 與 Recyclerview 一起使用,請執(zhí)行此操作。
DocumentSnapshot snapshot = options.getSnapshots().getSnapshot(position); String dbKey = snapshot.getId(); Log.d(TAG, "The database Key is : "+ dbKey);
然后你可以像這樣將它綁定在視圖持有者上
holder.setDocumentId(dbKey);
然后你可以在任何地方檢索它,這取決于你的 getters 和 setters。我希望這會幫助那里的人。

TA貢獻2051條經(jīng)驗 獲得超10個贊
DocumentChange對象具有返回QueryDocumentSnapshot對象的方法getDocument()。這是DocumentSnapshot的子類,這意味著它還有一個getId()方法。因此,您應該能夠使用來獲取正在處理的文檔的 ID。doc.getDocument().getId()

TA貢獻1859條經(jīng)驗 獲得超6個贊
以下是如何在 Javascript 中解決它,也許這將幫助您將其轉(zhuǎn)換為 Java。使用以下方法,我們可以動態(tài)檢索文檔 ID。請注意,我們使用snapshotChanges(). 這很重要,因為一旦我們訂閱了這個函數(shù),訂閱中就會包含文檔 ID。
saveMyValuesHere: any[] = []
getPegawai() {
return this.db.collection('Pegawai').snapshotChanges();
}
getPegawai().subscribe(serverItems => {
this.saveMyValuesHere = [];
serverItems.forEach(a => {
const data = a.payload.doc.data();
const id = a.payload.doc.id;
this.saveMyValuesHere.push({ id, ...data});
});
});
添加回答
舉報