【发布时间】:2020-05-14 21:06:54
【问题描述】:
我正在尝试使用 react js 中的 where 子句从 firestore 过滤文档。但是,当我在 where 子句中使用状态变量时,它不起作用,但是当我提供实际字符串时,它开始工作
不工作
firebase.firestore().collection('Partners')
.where("Email",'==',this.state.currentUser).get().then( querySnapshot => {
querySnapshot.forEach(doc => {
this.setState({
Theatre:doc.data().Theatre
})
})
})
工作
firebase.firestore().collection('Partners')
.where("Email",'==',"test@test.com").get().then( querySnapshot => {
querySnapshot.forEach(doc => {
this.setState({
Theatre:doc.data().Theatre
})
})
})
任何帮助将不胜感激。谢谢。
编辑
我什至尝试过console.log(this.state.currentUser==='test@test.com'),它正在实现。然而 where 子句不适用于状态变量
【问题讨论】:
-
您将不得不进行一些调试并找出
this.state.currentUser在您使用它时的值。console.log()应该有帮助。 -
state.currentUser 中的内容是电子邮件,否则将是错误
标签: javascript reactjs google-cloud-firestore where-clause