Как на самом деле запросить данные из Firestore с GeoFirestore? - PullRequest
0 голосов
/ 20 декабря 2018

Я пытаюсь запросить документы возле заданной точки в заданном радиусе в Firestore, используя GeoFirestore для моего проекта node.js.Во-первых, у меня есть документ в базе данных в следующем формате: enter image description here

Мой код запроса выглядит так:

// Create the GeoFirestoreQuery object
const geoQuery = geoFirestore.query({
    center: new firebase.firestore.GeoPoint(latitute, longitude),
    radius: 5,
    query: (ref) => ref.where("d.available", "==", true)
});

Дело в том, что яне могу понять, как получить документ из запроса.Я попробовал приведенный ниже код, но он просто не вызывается вовсе.

// Fetch the nearest couriers
const onKeyEnteredRegistiration = geoQuery.on("key_entered", function(key, document, distance) {
    console.log(key);
});

Как я могу вернуть документ?Чего мне не хватает?Соответствует ли мой запрос и структура базы данных?Есть ли пропущенные поля или проблемы?Или я должен использовать другой запрос вместо "key_entered"?Спасибо за любую помощь заранее.

1 Ответ

0 голосов
/ 20 декабря 2018

Я нашел проблему, речь шла о структуре базы данных.Я изменил свою структуру, как показано ниже, и теперь она работает отлично.enter image description here

...