我的Google地图需要支持“越野”地点。
我想知道如何防止我的地图标记卡入道路。
地址从输入字段和lat& lng从标记的位置提取。
function geoCodeLocation(address, lat, lng) {
geocoder.geocode(
{
"address" : address ? address : '',
"location" : new google.maps.LatLng(lat, lng)
},
/* ... */
}
答案 0 :(得分:3)
您展示的代码非常少,所以我可能错过了这一点,但Geocoding通常会执行以下两项操作之一:
GeocodingService需要地址或位置,但不是。
您的代码看起来总是希望拥有LatLng并且该地址可能存在。如果您使用LatLng调用地理编码器,它将返回一个地址。在这种情况下,将标记贴在道路上是有道理的。
另一方面,如果你有一个地址,你回来的LatLng将基于地址,所以它也会被附加到路上。
但是如果你总是拥有LatLng,为什么不用LatLng创建标记并跳过地理编码调用(特别是因为你不希望标记在路上)?
如果我不合适,您能否为您的问题添加更多详细信息?