百度地图API删除指定的覆盖物Marker

部分思路代码:

1.给地图map添加覆盖物Marker,注意给marker设定一个唯一表示,我这里用的是后端传过来的id

const point = new BMap.Point(item.lng, item.lat)
const marker = new BMap.Marker(point)
marker.id = item.number
this.map.addOverlay(marker)

2.根据getOverlays()方法获取到地图上所有的覆盖物,并判断覆盖物的id是否和需要删除的id一致,若一致则通过removeOverlay()删除指定的覆盖物

// 移除地图覆盖点
removeOverlay(lng, lat) {
    
    
  const allOverlays = this.map.getOverlays()
  for (let i = 0; i < allOverlays.length; i++) {
    
    
    if (allOverlays[i].id && allOverlays[i].id === this.rowData.id) {
    
    
      this.map.removeOverlay(allOverlays[i])
    }
  }
}

猜你喜欢

转载自blog.csdn.net/qq_43651168/article/details/127801930
今日推荐