Tech : гео-магазин, пожарное депо, угловая версия 7
Ссылка на гео-магазин: https://github.com/geofirestore/geofirestore-js
В настоящее время:
Я использую лимит и увеличиваю его до 20. За один раз:
Проблема:
Это не совсем хорошо, так как вызывает большие полезные нагрузкикаждый раз, а затем упорядочивает их снова по мере увеличения списка по возрастанию, так что это действительно сбивает с толку пользователя.
Пожалуйста, дайте мне знать о любых альтернативах разбиению на страницы геофайра?
Текущая попытка:
public getResults(geo: any, lastLimit: number) {
const geocollection: GeoCollectionReference = this.geofirestore.collection('test');
const query = geocollection.near({ center: new firebase.firestore.GeoPoint(geo.lat, geo.lng), radius: geo.radius });
lastLimit = lastLimit + 2;
return query.limit(lastLimit).get().then((querySnapshot) => {
return this.mapResponse(querySnapshot, lastLimit);
});
}
public mapResponse(querySnapshot: GeoQuerySnapshot, lastLimit: number): any {
let jobs = [];
querySnapshot.forEach((doc) => {
jobs = [ ...jobs, doc.data() ];
});
return { jobs, lastLimit };
}
Вопросы:
Когда будет доступна нумерация страниц, если ее нет?
Как мне обойти это сейчас, если он недоступен?
Если он доступен, как мне это сделать, обычно я использую startAt / startAfter и т. Д.?