我希望能够在Google地图中绘制路线,通过拖动来修改该路线,保存更改并稍后重新加载并进一步编辑。与谷歌的MyMap一样。只需保存原点和目的地位置就行不通,因为它不会重新加载相同的路线。
我可以保存via_waypoint []数组中的所有点。这允许 我将路线重新绘制为折线但不再可编辑。
文档说,DirectionsResult是以JSON格式返回的 格式。所以我试图将DirectionsResult转换为JSON string,将该字符串保存并重新加载为JSON对象并将其传递给 DirectionsRenderer。但它没有显示,也没有错误 抛出。
以下是我尝试做的一个示例。我已经将保存跳过了数据库步骤。我将DirectionsResult转换为字符串,然后再转换回JSON对象。
directionsService.route(request, function(response, status) {
if (status == google.maps.DirectionsStatus.OK) {
var str = JSON.stringify(response))
var obj= JSON.parse(str)
directionsDisplay.setDirections(obj);
}
感谢任何帮助。
由于
答案 0 :(得分:-1)
为什么不保存 waypoint [] 数组的坐标并将它们重新引入 DirectionsRequest 对象的航路点成员?稍后,当您重新加载页面时,像往常一样向 DirectionsService 发出请求,但使用前面提到的 DirectionsRequest 对象。如果您在渲染器的 DirectionsRendererOptions 中将可拖动设置为 true ,则应该是可拖动的。