如何
将其移植到 v3? removeOverlay 不包含在 v3 中。
if( mapElements[lMapElementIndex]['marker'] != 0 ){
//map.removeOverlay(mapElements[lMapElementIndex]['marker']); V2
}
V3?
if( mapElements[lMapElementIndex]['marker'] != 0 ){
//map.removeOverlay(mapElements[lMapElementIndex]['marker']);
mapElements(mapElements[lMapElementIndex]['marker']).setMap(null);
} //but throws an error mapElements is not a function
您需要使用覆盖的setMap
方法。从文档中:
要从地图中移除叠加层,请调用叠加层的
setMap()
方法, 通过null
.
假设mapElements
是一个对象数组,并且 marker
属性引用一个覆盖实例,那么您需要做的就是:
mapElements[lMapElementIndex]['marker'].setMap(null);
您的尝试会引发错误,因为您尝试将mapElements
作为函数调用(当它显示为数组时)。没有必要这样做。只需摆脱函数调用,它应该可以正常工作。