如何正确使用Google Maps API?

Ben*_*Ben 6 google-maps-api-3

我发现,在使用Google Maps API时,结果会不时发生变化.通过改变我的意思是响应对象.基本上我是在查询谷歌地图以获取基于用户输入的地点列表(也使用jQueryUI自动完成).我正在尝试正确获取从Google Maps API返回的坐标,但包含精确|近似坐标的属性似乎会不时更改.

例如:在早些时候,我能够得到像item.geocode.geometry.location.Ya和的坐标item.geocode.geometry.location.Za.然后我的搜索表单破了,因为Google将其更改为item.geometry.location.mbitem.geometry.location.nb.

关于如何实现这种正确,稳定的方法的任何建议?

Mic*_*ary 14

切勿使用您找到的Maps API对象的未记录属性.每当修改Maps API时,这些都会发生巨大变化.

相反,只使用记录的方法和属性.

item.geocode.geometry.location是一个LatLng,所以你可以调用它.lat().lng()方法:

var location = item.geocode.geometry.location;
var lat = location.lat();
var lng = location.lng();
Run Code Online (Sandbox Code Playgroud)

  • @Imperative - 不,这正是你应该*不*做的.您正在使用在调试器中找到的未记录的属性.它们可能会在本周工作,但只要Google重新编译Maps API代码,它们就会随机更改.使用记录的`lat()`和`lng()`方法代替. (4认同)