谷歌地图放置自动完成缺失的几何图形
Google Maps Places Autocomplete missing geometry
Google Maps Places Autocomplete功能不再按预期工作。
https://developers.google.com/maps/documentation/javascript/examples/places-autocomplete
在地图中插入搜索字符串(例如"ZKM")时,它会在下拉列表中给出一些建议。在这种情况下,它将是"ZKM |卡尔斯鲁厄艺术和媒体技术中心,洛伦茨大街,卡尔斯鲁厄,德国"。单击此项目时,地图上不会放置任何标记!
但是,当搜索"卡尔斯鲁厄"并单击第一个搜索结果"卡尔斯鲁厄,德国"时,标记的位置正确。
在代码中调用了一个名为getPlace()的函数。
var place = autocomplete.getPlace();
该地点应包含对象"几何",但它没有。
此问题有什么解决方法吗?
请确保在自动完成中设置"几何"字段,如下所示:
autocomplete.setFields(['address_component', 'geometry']);
看看函数的开头:
if (!place.geometry) {
return;
}
PlaceResult
可以,但不得具有geometry
属性。
要阐明自动完成的工作原理,请执行以下操作:
当您键入某些内容时,API 将请求预测(以填充下拉列表)。仅当您从下拉列表中选择一个地点时,它才会请求特定地点的数据(包括几何图形)。
显然,使用的数据存在不一致(API 不应建议无法访问信息的地方),但事实就是如此,您可能会在没有位置的情况下获得预测。
解决方法:AFAIK 否
看起来它已被谷歌修复:)
是的,这个地方包含一个对象"几何"。
要找到这个,你应该使用这个:
autocomplete.getPlace().geometry.location.lat() //for the latitude
autocomplete.getPlace().geometry.location.lng() //for the longitude
相关文章:
- 谷歌地图固定位置覆盖
- 不显示带有本地json文件数据的谷歌地图脚本
- 谷歌地图不是以HTML显示,而是在JS Fiddle上工作
- 谷歌地图标记不会显示
- 无法在JS中显示谷歌地图
- 科尔多瓦页面类应用程序中的多个谷歌地图
- 需要帮助谷歌地图方向面板在FancyBox中显示
- 在谷歌地图上获取事件的x,y坐标
- 谷歌地图API v3不适用于移动浏览器或PhoneGap
- 模拟谷歌地图中的点击
- 如何知道哪个标记被谷歌地图点击了
- 谷歌地图JS API+JSON-多个标记没有显示
- 缓存谷歌地图数据
- 谷歌地图劫持了iphone's滚动(触摸事件)-如何恢复
- 在谷歌地图上绘制位置数据库
- 标记的实时更新,无需加载页面谷歌地图API V3
- 可以't计算自定义谷歌地图的js
- 谷歌地图放置自动完成缺失的几何图形
- 谷歌地图库位置和几何图形在一个HTML页面中协同工作
- 如何将纬度和经度(从gps方法)转换为几何图形.location谷歌地图对象