我正在与Firebase合作完成一个项目,而我在查询工作原理方面遇到了麻烦。我正在尝试查询并查找当前用户所在位置的某个半径范围内的任何其他用户。
我可以创建geoQuery,但我不确定如何返回位置在半径范围内的用户。
从示例中,似乎key_entered
仅在数据库中的位置发生更改时触发。一旦设置,我的所有位置都是静态的,所以我只想进行查询,然后返回其瞬时位置在查询半径内的所有用户。
Geofire有可能吗?
我的位置信息保存在Firebase中,如下所示:
users {
uid: {
location: {
g: 'GeoHash',
l: [lat, long]
}
}
}
这是我的查询:
let geoQuery = geoFire.query({
center: [currentUser.location.l[0], currentUser.location.l[1]],
radius: 1000
});
答案 0 :(得分:0)
问题在于我没有使用geoFire的QuotaExceededError: DOM Exception 22: An attempt was made to add something to storage that exceeded the quota.
方法存储位置,因此从未创建过geoHash,因此无需查询geoFire。感谢@jacob的帮助!