我的 firebase 查询调用没有获取我的文档,即使它存在
My firebase query call isn't getting my document even though it exists
我正在使用 reactjs,我的数据库是 firebase。
我正在尝试发送群组邀请。传递给函数的变量是组的 ID (groupID)、不用于检查但传递给邀请函数的组名称 (groupName) 以及被邀请者的电子邮件地址 (invite)。它检查邀请是否已经存在,如果不存在,它调用邀请代码,如果不存在,它只是发送一个警告,说用户已经有一个邀请。这是我的检查代码:
await props.firestore
.collection("invites")
.where("groupID", "==", groupID)
.where("invitee", "==", invite)
.get()
.then(async (invitation) => {
if (invitation.exists) {
alert("User already has invite");
} else {
// Send Invite!
await props.firestore
.collection("invites")
.add({})
.then(async (ref) => {
SendInvite(invite,groupID,groupName);
alert("INVITE SENT");
});
}
});
问题是它实际上并没有抓住任何东西并且总是发送邀请。我的数据库是这样设置的:
有 2 个问题阻止它工作。
首先,变量“invite”看起来是一个字符串,并且表现得像一个字符串,但是与数据库中的内容相比,它会 return 错误。因此,我不得不将其修改为 ""+invite
以将其转换为字符串。我不确定为什么它不是字符串开头。
其次,不是“.exist”,而是“.empty”。这些是最终的变化:
.collection("invites")
.where("invitee", "==", "" + invite)
.where("groupID", "==", "" + groupID)
.get()
.then(async (inviteData) => {
if (inviteData.empty) {
我正在使用 reactjs,我的数据库是 firebase。
我正在尝试发送群组邀请。传递给函数的变量是组的 ID (groupID)、不用于检查但传递给邀请函数的组名称 (groupName) 以及被邀请者的电子邮件地址 (invite)。它检查邀请是否已经存在,如果不存在,它调用邀请代码,如果不存在,它只是发送一个警告,说用户已经有一个邀请。这是我的检查代码:
await props.firestore
.collection("invites")
.where("groupID", "==", groupID)
.where("invitee", "==", invite)
.get()
.then(async (invitation) => {
if (invitation.exists) {
alert("User already has invite");
} else {
// Send Invite!
await props.firestore
.collection("invites")
.add({})
.then(async (ref) => {
SendInvite(invite,groupID,groupName);
alert("INVITE SENT");
});
}
});
问题是它实际上并没有抓住任何东西并且总是发送邀请。我的数据库是这样设置的:
有 2 个问题阻止它工作。
首先,变量“invite”看起来是一个字符串,并且表现得像一个字符串,但是与数据库中的内容相比,它会 return 错误。因此,我不得不将其修改为 ""+invite
以将其转换为字符串。我不确定为什么它不是字符串开头。
其次,不是“.exist”,而是“.empty”。这些是最终的变化:
.collection("invites")
.where("invitee", "==", "" + invite)
.where("groupID", "==", "" + groupID)
.get()
.then(async (inviteData) => {
if (inviteData.empty) {