小编Ala*_*eyo的帖子

谷歌地图上删除的多边形在缩小后重新出现

我有一张可以绘制多边形的地图。当我开始绘制新的多边形时,我想删除以前绘制的多边形。

实际上:我在地图上同时只有一个多边形。代码一开始似乎可以工作。但是,在我在地图上使用滚动后,先前绘制的多边形会重新出现。

我使用 Vue.js,所以问题可能在于我错误地使用了 Vue API 或 google 地图 API。

这是我的代码:

const loader = new Loader({ apiKey: googleApiKey, libraries: ["drawing"] });

let map = ref(null);
const mapDiv = ref(null);
let oldShape = ref(null);

onMounted(async () => {
  await loader.load();

  map.value = new google.maps.Map(mapDiv.value, {
    center: currentPosition.value,
    zoom: 7,
  });

  const drawingManager = new google.maps.drawing.DrawingManager({
    drawingMode: google.maps.drawing.OverlayType.POLYGON,
    drawingControl: false,
    polygonOptions: {
      editable: true,
      fillColor: "#ffff00",
    },
  });

  drawingManager.setMap(map.value);

  google.maps.event.addListener(drawingManager, "overlaycomplete", (event) => {
    if (oldShape.value!==null) {
      oldShape.value.setMap(null);
    }
    const shape = …
Run Code Online (Sandbox Code Playgroud)

javascript google-maps google-maps-api-3 vue.js

3
推荐指数
1
解决办法
575
查看次数