我正在使用set
函数在firestore中创建一个新文档。我想在set函数将数据推送到数据库之后使用文档数据。
// Add each record to their respective heads
let docRef = headCollectionRef.doc(data.headSlug).collection(recordsCollection)
.doc(String(data.recordData.sNo))
docRef.set(data).then(docSnap => {
agreementData.push(
docSnap.get().then(data => {
return data
})
)
})
then()
中没有任何内容正在执行。
非常感谢任何帮助
答案 0 :(得分:4)
set
会返回Promise<void>
,因此您无权访问then
中的文档数据。
这种情况下,async / await将使您的代码更容易阅读。
async function cool() {
const docRef = headCollectionRef.doc(...)
await docRef.set(data)
const docSnap = await docRef.get()
agreementData.push( docSnap.data() )
}
https://firebase.google.com/docs/reference/js/firebase.firestore.DocumentReference#set