Първо, все още няма обвивка за удобство, за да използвате geoNear директно с Mongoose (като се има предвид, че искате да прочетете изчисленото разстояние).
Но тъй като колекциите на Mongoose прокси всички методи за събиране от родния родния драйвер на MongoDB можете просто да използвате техния метод geoNear , въпреки че трябва да се откажете малко от удобството, което може да очаквате от Mongoose и според моите открития обработката на грешки е малко по-различна.
Както и да е, ето как можете да използвате споменатия API:
YourModel.collection.geoNear(lon, lat, {spherical: true, maxDistance: d}, function(err, docs) {
if (docs.results.length == 1) {
var distance = docs.results[0].dis;
var match = docs.results[0].obj;
}
});
Моля, вижте документите за правилно обработване на грешки и как да изчислите разстоянията .