2015-04-06 37 views
0

我正在做我的第一個使用loopbackjs的項目。loopbackjs:指定度量單位而不是英里的位置查詢

我正在爲基於位置的接近函數(「near」)創建查詢。我發現了這個很好的示例,並遵循它,特別是在本地安裝它並查看代碼,我已經能夠讓我的應用程序執行近查詢,這非常棒。 https://strongloop.com/strongblog/node-js-api-geolocation/

但是,該示例使用miles作爲maxDistance參數。

是否可以使用代替?

我看着官方文檔,找不到任何東西。 MongoDB的參考資料表明,它使用的是maxDistance的量表 - 這是strongloop默認的示例應用程序沒有的,因爲我嘗試使用500並返回所有內容,僅使用0.31,相當於500英里,我的值按照我需要的方式過濾。

回答

0

GeoPoint.distanceBetween(here, there, {type: 'meters'})

更多信息,請參見在http://docs.strongloop.com/display/LB/GeoPoint+classgeoPoint.distanceTo(point, options)部分。

+0

好的。這是GeoPoint.distanceBetween()函數。我可以將該類型參數添加到「where($ geo:{near:...」)函數中嗎? – faboolous

+0

是的,您可以傳遞一個類型作爲選項。請參閱https://github.com/strongloop/loopback- datasource-juggler/blob/master/lib/geo.js#L252。 – superkhau

+0

對不起@superkhau,但是這個代碼:'where:{location:{near:position,maxDistance:MAX_DISTANCE,{type:'meters'}}'' t似乎工作,它說「意外的標記{」的括號之前的'類型'...道歉,如果我沒有看到一些愚蠢的 – faboolous

0

不知道你是否弄明白了。

where: { geo: { near: here, maxDistance: distance, unit: 'meters' }} 
相關問題