reactjs - 使用条件时 doc.data() 不是函数
问题描述
fetchPlaceDetail() {
this.isLoading = true;
getPlaceDetail()
.where("placeId", "==", "p002")
.onSnapshot(doc => {
const { placeName, description, todo } = doc.data();
this.placeName = placeName;
this.description = description;
this.todo = todo;
this.isLoading = false
})
}
如果我使用.doc('docId')
而不是.where("placeId",'==',"p002")
解决方案
看起来文档是一个集合,而不是单个文档。
你应该运行类似的东西:
fetchPlaceDetail() {
this.isLoading = true;
getPlaceDetail()
.where("placeId", "==", "p002")
.onSnapshot(docs => {
docs.forEach(doc => {
const { placeName, description, todo } = doc.data();
this.placeName = placeName;
this.description = description;
this.todo = todo;
this.isLoading = false
})
})
}
推荐阅读
- grammar - 使用 Bison 的递归规则的麻烦,并使用它存储值(再次)
- python - 从嵌套列表中打印出最高价值的项目
- python-3.x - 查找列中的值是否在另一列中
- java - 我可以使用模板方法设计模式在子类中创建自己的方法吗?
- node.js - MongoServerSelectionError:NodeJS 和 Express 的连接超时
- groovy - Groovy 匹配行和返回列
- python - 如何计算从二维数组中的第一个索引移动到最后一个索引所采用的路径数?
- c++11 - C++ 受保护的函数在派生类中不可见
- arrays - 遍历未定义长度的子数组
- python - 在声明“__init__”和“__str__”之类的类时,python中的内置方法是什么?