Firebase数组包含-搜索值而不是键

问题描述 投票:0回答:1

您如何在具有数字键集的数组中查询值?

例如,此查询不起作用,因为我认为它正在查看索引而不是值:

var db = firebase.firestore();
var users = db.collection("Users");
var currentUser = firebase.auth().currentUser;
var result = users.where('liked', 'array-contains', currentUser.uid);
if (result.length > 0) {
  return 'You have a match!';
} else {
  return 'No matches';
}

enter image description here

javascript firebase react-native google-cloud-firestore react-native-firebase
1个回答
1
投票

如Stratubas所评论,问题在此代码中:

var result = users.where('liked', 'array-contains', currentUser.uid);

此代码构建查询,但尚未执行查询。因此resultQuery object。要执行查询并从服务器获取结果,请调用Query,然后返回get() on the query。承诺产生后,您可以在get()中处理结果。

Promise<QuerySnapshot>

在更现代的JavaScript中,以上内容也可以写成:

QuerySnapshot object
© www.soinside.com 2019 - 2024. All rights reserved.