问题标签 [geofire]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
angularjs - 我什么时候知道 GeoFire 已完成加载,因为它是基于事件的触发器
所以我使用 GeoFire 和 AngularFire 来填充我的 ng-repeat 项目列表。有一个离子拉动刷新列表。所以用户拉它并获取当前更新的位置并刷新列表(调用 GeoFire 以重新填充列表)。
如您所见,上面的代码非常简单。doRefresh() 调用 setupTaskListing()。它设置了 geoQueryCallback,当键输入事件触发时,将新数据推送到 $scope.tasks 数组中。所以它有效。
但是这个 GeoFire 结构的问题是......我不知道所有任务何时完成进入半径......所以当半径内没有数据时,我无法设置加载器并提示。当没有数据输入时,key_entered 事件永远不会触发,所以我永远不会知道是否有数据。它可以是没有数据或 GeoFire 仍在加载。如果我将 loader.hide() 方法放在 $scope.$on 中,当实际上没有数据时它永远不会触发。所以我的屏幕将永远加载。理想的用户体验应该是停止加载并提示人们增加搜索范围。如果我将 loader.hide() 放在 $scope.$on 之外并设置 $timeout 来调用它。GeoFire 在 $timeout 运行之前需要更长的时间来加载数据。因此用户将提示更改半径屏幕,然后闪回实际列表。又是糟糕的用户体验。所以... 我在这里有什么选择?我可以在 GeoFire 中使用某种承诺吗?
android - 如何像 Periscope 一样让所有在线 android 应用程序用户在地图上可见?
我已经做了好几个星期了,但似乎还无法弄清楚。请帮忙。
我正在使用Google Maps
API 创建一个应用程序,并且我已成功map
运行。但我仍然需要以下帮助:
如何让所有在线应用程序用户visible
(彼此)在map
(就像在 Periscope 中一样)?
android - 将 Geofire 位置与 Firebase 条目相关联
所以,我有一个 Android 应用程序可以让用户查看他们当前位置的某个半径范围内的帖子。我正在使用firebase存储帖子,但我找不到在firebase中查询特定半径内的帖子的方法,所以现在我正在考虑使用geofire,但我不确定是否有办法存储位置在我使用geofire的firebase帖子旁边,因此,在我看来,将位置与帖子相关联的唯一方法是将帖子ID(由firebase生成的那个)作为geofire位置的关键。这是正确的还是有更好的方法?
angularjs - 协调 geoFire Ready 和 key_entered 事件
我是 GeoFire、FireBase 和 Angular 的新手。我正在尝试创建一个函数,该函数将获取一些坐标并返回这些坐标附近的一些对象。
我从分配给视图中使用的范围变量的函数返回一个承诺,希望当准备好的事件解决承诺时,附近的对象数组将可用。
我注意到代码的 key_entered 部分连续调用了两次,但在处理 key_entered 事件的代码完成之前,调用了 ready 事件,因为所有 key_entered 事件都已触发。因此,虽然逻辑的 key_entered 部分正在构建我想要传递的数组来解决承诺,但在我解决 ready 事件中的承诺时它还没有准备好。
在处理完所有 key_entered 事件并且正确构建对象数组后,如何确保我解决了承诺?
谢谢,桑杰。
firebase - GeoFire:如何在查询中添加额外条件?
我想知道是否可以在查询中添加额外的条件?
谢谢
ios - Geofire / FireBase .indexOn
我正在尝试从 iOS 应用程序中使用 Geofire。但是我对规则定义失败了。
这就是我的数据集的样子:
在我的 Swift 代码中,我使用了这个:
我这样设置观察者:
我使用 GeoFire 方法为用户设置位置,如下所示:
但我收到此消息
[Firebase] Using an unspecified index。考虑在您的安全规则中添加 ".indexOn": "g" at /offers 以获得更好的性能
我尝试了几种规则组合..
我必须检查我的架构吗?还是我错过了什么?有什么帮助吗?
firebase - 使用 Geofire + Firebase 过滤结果
我试图弄清楚如何使用 Geofire 过滤器进行查询。假设我有不同类别的餐厅。我想将该类别添加到我的查询中。我该怎么做?
我现在拥有的一种方法是使用 Geofire 查询键,通过每个键运行 for 循环并获取餐厅,然后将适当的餐厅插入到数组中。这些似乎效率很低。还有其他方法可以解决这个问题吗?
理想情况下,我将获得过滤后的结果,并且仅在它们即将显示时加载每个项目。
干杯!
firebase - 从 RDBMS 的角度构建 Firebase 中的数据
我正在开发一个使用 firebase 作为后端的混合移动应用程序。我习惯了传统的关系型 DBMS,这是我第一次尝试 NoSql 方式。我很难构建我的数据。我不确定我是否做得对。这是我的域(以传统方式定义)。
我在firebase中使用facebook身份验证创建了用户,这就是在firebase中创建的
如何以良好的扁平结构在 Firebase 中构建我的数据。我能想到的firebase中用户域的一个例子如下 -
现在我的问题是我不确定是否也应该创建所有其他表节点。它将增加冗余。
我如何构建用户和服务?一个用户可以提供许多不同类型的服务,一个服务可以由许多用户提供。
我想将 geofire 用于基于位置的服务 - 对于位置,我不想存储每个用户的位置,只有具有特定角色的用户才应该保存他们的位置。我应该在用户节点中添加位置对象吗?2个不同的用户节点可以有不同的属性吗?对于用户 A - 我在用户中设置了位置。但对于用户 B - 我没有将位置保存在用户中,因为角色不同。这是一个好习惯吗?
如果有人可以为这些表建议一个好的数据结构,那就太好了。
objective-c - 将 Geofire 与 Firebase 数据集成
我正在尝试将 Geofire 集成到 Firebase Objective-C 应用程序中,但我不确定如何设置 Geofire 节点来观察我的 Firebase 存储库。以下是 Geofire 启动指南的建议:
“要创建一个新的 GeoFire 实例,您需要将其附加到 Firebase 数据库引用”
我的问题是:“将其附加到 Firebase 数据库参考”是什么意思?
在我的代码中,我希望 Geofire 观察这个 Firebase 位置:
这是 Firebase 中“语言”节点的样子:
我想知道的是如何让 Geofire 观察和存储每个假用户的位置。每当我将用户读入 /languages/arabic 或 /languages/english 参考资料时,我是否会创建一个唯一的 Geofire 节点并将用户读入其中?或者Geofire 会观察预先存在的节点——即。像这样的东西会起作用吗:
ios - 查询链接到 GeoFire 的 Firebase 数据
读完这些问题后:
我知道对于给定的实例,该对象的位置数据和常规数据必须分开保存,因此我必须有不同的侦听器。第一个查找位置数据,然后为与位置查询找到的对象对应的每个对象查找一个。
但是,我的问题是关于实际数据本身的侦听器,而不是位置数据。出于示例的目的,假设我有一个应用程序可以找到用户当前位置附近的“餐厅”对象列表。我知道这必须使用 GeoFire 来完成,但是是否有必要为每个返回的快照设置一个事件侦听器来检索附加数据?
详细地说,如果我想知道餐厅的其他任何方面(评级、营业时间、可用座位)何时发生变化,该怎么办?单个事件值侦听器不会这样做,因为它不会侦听这些餐厅的持续变化。
解决此问题的最佳方法是什么?