我正在尝试在地图的单个实例上渲染多个方向(本质上是它们的折线)。在以前版本的地图 API 中,我做了类似的事情
//directions[] stores the GDirections objects
//x[] is an array of Elements extracted from an XMLHTTPResponse object
//iterating over the values in x[]
GEvent.addListener(directions[i], "load", function() {
var polyline = this.getPolyline();
map.addOverlay(polyline);
polyline.setStrokeStyle({opacity:0.2})
});
directions[i].load("from:here to:"+x[i].childNodes[0].nodeValue,{getPolyline:true});
现在有了 DirectionsService 和 DirectionsRenderer 类,我不知道做同样事情的最佳实践是什么。我是否创建了 DirectionsRenderer 类的多个实例并让它们对主地图的实例执行 setMap()?我是否创建了 DirectionsServices 类的多个实例。
一般来说,我对 javascript 和函数式语言非常陌生,几乎没有尝试理解函数式闭包,因为它们与回调有关。也为格式化道歉。
任何帮助将不胜感激,我将尝试澄清您可能提出的任何问题。