私はangularjsでwebappを構築しており、firebaseを使用しています。私はgeofireを使って与えられたlatの与えられた半径の範囲内の値を返す。それは完全に動作し、半径に値があるときに私が望むものを返します。ただし、半径ゾーンに値がない場合は何も返しません。最初のページの読み込みでは、何かが約束されて返されたときに始まり、終わるスピナーがあるので、これは問題です。指定された半径に値がない場合、geofireにnull値を返す方法がありますか?半径ゾーン内にインデックスがない場合、GeoFireにnullを返すようにします。
これは、私がデータをretireveするために使用していたコードです:何かが半径ゾーンにあることを発見された場合を除き
geoQuery.on("key_entered", function(key, location, distance) {
console.log(key + " entered query at " + location + " (" + distance + " km from center)");
console.log(key);
},function(error) {
console.log("Promise was rejected with the following error: " + error);
});
});
にconsole.logは実行されません。私はそれがまだ何かを返すために必要なので、ユーザーにその地域にビジネスがないことを知らせることを知っています。どんな助けでも大歓迎です!
UPDATE:
私はそれがkey_entered 'イベントをトリガだろうと考えたが、それはこのように正方形の1で私に戻って残していなかったとしても「準備」イベントを追加しました。
var onKeyExitedRegistration = geoQuery.on("key_exited", function(key, location, distance) {
console.log(key + "exit +" location + "(" + distance + "km from center)"); });
geoQuery.on("ready",function() {
console.log(key + " moved within query to " + location + " (" + distance + " km from center)");
});
ありがとうございましたが、「準備ができました」イベントを実装した後も、私はまだ助けになりませんでした。私はビジネスがないことを私に知らせるいくつかの旗を取得する必要があります。 – Brennan
このようなフラグは存在しないので、自分で作成する必要があります。私は例を追加しました。 –
ちょうどそのようなフラグを作ろうとしましたが、 'key ready'機能で更新されたとき、 'ready'でrefelctedされていないようです。 – Brennan