我有以下代码可从Firestore获取所有文档:
const getThemesList = async ({ commit }) => {
const snapshot = await firebase
.firestore()
.collection('themes')
.get();
const promiseThemes = snapshot.docs.map(doc => doc.data());
commit(types.GET_THEMES, promiseThemes);
};
我可以列出该功能,每个项目都有一个删除按钮:
<v-btn text @click="deleteTheme(item)">
Delete
</v-btn>
每个项目仅具有以下参数:
{
description: (...)
name: (...)
type: (...)
}
但是,如果我没有他们的ID,该如何删除项目?
db.collection('themes')
.doc(theme.id)
.delete()
.then(function() {
我如何获得身份证? theme.id?
编辑1: 我对@DougStevenson的答案有误
答案 0 :(得分:2)
doc
是具有id
属性的DocumentSnapshot。只需将文档ID添加到您生成的每个项目对象中即可:
const promiseThemes = snapshot.docs.map(doc => {id: doc.id, ...doc.data());
现在您有了一个具有id
属性的对象,可用于删除文档。