O Mongoose ainda está usando o formulário de comando do banco de dados 'geoNear'. Isso é considerado obsoleto em todas as versões em andamento do MongoDB.
Em vez disso, use o formulário de consulta padrão, que foi integrado ao mecanismo de consulta padrão desde o MongoDB 2.6 e versões posteriores:
Model.find({
"loc": {
"$near": {
"$geometery": {
"type": "Point",
"coordinates": [ 10,10 ],
},
"$maxDistance": 20
}
}
},function(err,docs) {
// do something here
});
É JavaScript, uma "linguagem tipada dinamicamente". Você não precisa desses ajudantes de funções ridículos que são necessários para
strict
linguagens tipadas sem construções dinâmicas para definição e estrutura de objetos. Então faça o que o manual (que todos os exemplos estão em notação JSON, que o JavaScript entende nativamente) lhe diz para fazer e você está sempre bem.