Из-за особенностей работы пакетов Geo * Fire они не могут возвращать ближайших к X результатов.
Общий шаблон:
- Начните с разумного диапазона, клиент -стороне упорядочить результаты по расстоянию, а затем вернуть верхний X.
- Если вы получили слишком мало результатов, попробуйте еще раз с большим диапазоном.
Увеличение диапазона не так дорого в Firestore, как вы могли подумать, поскольку документы для меньшего диапазона уже будут в кеше на стороне клиента после первого геозапроса.