Først og fremmest er der endnu ikke en bekvemmelighedsindpakning til at bruge geoNear med Mongoose direkte (i betragtning af at du ønsker at læse den beregnede afstand).
Men da Mongoose-samlinger proxyerer alle indsamlingsmetoder fra den native MongoDB native driver du kan bare bruge deres geoNear-metode , selvom du er nødt til at give afkald på en lille smule bekvemmelighed, du kunne forvente af Mongoose, og i mine resultater var fejlhåndteringen en smule anderledes.
I hvert fald er det sådan, du kan bruge nævnte 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;
}
});
Se venligst dokumenterne for korrekt fejlhåndtering og hvordan man beregner afstandene .