相关疑难解决方法(0)

MongoDB $geoNear 距离与谷歌地图距离不同

我的数据库中有一个场地列表,我希望按照与客户的距离顺序显示这些场地。

我对数据库的查询如下:

    venueCollection.aggregate([
        {
            '$geoNear': {
                'near': {
                    'type': 'Point',
                    'coordinates': [ user_lng , user_lat ]
                },
                'spherical': true, 
                'distanceField': 'dist'
            }
        },
        {
            '$sort': {
                'dist': 1
            }
        }
    ], function (err, venues) {
        // my code...
    });
Run Code Online (Sandbox Code Playgroud)

一个简单的文档:

{
    "_id" : ObjectId("56ec1c833e017f403870e2c5"),
    "name" : "A & H",
    "city" : "'s-Gravenhage",
    "province" : "Zuid Holland",
    "location" : {
        "type" : "Point",
        "coordinates" : [ 
            4.276930300000004, 
            52.0732475
        ]
    }
}
Run Code Online (Sandbox Code Playgroud)

它显示场地列表,该distance字段从最近到最远是正确的。

客户端我使用latitudelongitude(与我传递给服务器和场地相同)来计算与谷歌地图的距离:

      var venuePosition …
Run Code Online (Sandbox Code Playgroud)

javascript google-maps mongodb

2
推荐指数
1
解决办法
1662
查看次数

标签 统计

google-maps ×1

javascript ×1

mongodb ×1