【发布时间】:2018-06-07 21:12:14
【问题描述】:
借助 Google Maps Javascript API,可以使用 DirectionsService 和 DirectionsRenderer (examples) 显示标记和它们之间的方向
const directionsService = new google.maps.DirectionsService()
const directionsDisplay = new google.maps.DirectionsRenderer()
const mapOptions = {
zoom:7,
center: loc // some coordinates
}
const map = new google.maps.Map(document.getElementById('map'), mapOptions)
directionsDisplay.setMap(map)
const request = {
origin: start, // some coordinates
destination: end, // some coordinates
travelMode: 'DRIVING'
}
directionsService.route(request, function(result, status) {
if (status == 'OK') {
directionsDisplay.setDirections(result)
}
})
上面将在地图上显示两个标记(开始、结束),它们之间的路线突出显示。我需要的是对创建的每个标记的引用(设置自定义标签、注册事件等)。在使用directionsDisplay.setDirections(result) 的同时有什么方法可以做到这一点,还是我需要手动创建所有内容?
【问题讨论】:
-
我不相信这是可能的,因为有一个long-standing feature request 可以将此功能添加到
DirectionsRenderer。您必须从DirectionsResult中返回的geocoded_waypoints和routes在地图上手动创建标记/折线 -
@Preston 你能给我发送参考示例吗?如何从 geocoded_waypoints 在地图上手动创建标记/折线?