Firestore 是 Google Firebase 提供的一种 NoSQL 数据库服务,它允许开发者以灵活的方式存储和同步数据。Firestore 支持复杂的查询,包括多个 whereEqualTo
条件。然而,如果你发现多个 whereEqualTo
条件没有按预期工作,可能是以下几个原因:
whereEqualTo
条件,或者最多只能包含 4 个字段的条件组合。whereEqualTo
条件合并为一个复合条件,例如使用 whereIn
或 whereArrayContains
。假设你有一个名为 users
的集合,你想查询所有年龄为 25 岁且城市为 "New York" 的用户:
const db = firebase.firestore();
db.collection('users')
.where('age', '==', 25)
.where('city', '==', 'New York')
.get()
.then((querySnapshot) => {
querySnapshot.forEach((doc) => {
console.log(`${doc.id} => ${JSON.stringify(doc.data())}`);
});
})
.catch((error) => {
console.error('Error fetching documents: ', error);
});
如果你已经检查了上述所有可能的问题,并且仍然无法解决问题,建议查看 Firebase 控制台中的错误日志,以获取更多关于查询失败的详细信息。
领取专属 10元无门槛券
手把手带您无忧上云