首页 > 解决方案 > 无法读取未定义的属性“绘图”

问题描述

我正在使用AGM 地图使用 Google 提供的绘图工具绘制区域的自定义边界。

这是我的代码片段

  AgmCoreModule.forRoot({
  apiKey: 'here my api_key',
  libraries: ['visualization', 'places', 'drawing']
})

 ngAfterViewInit() {
  //debugger;
    this.mapsAPILoader.load().then(() => {
      // tslint:disable-next-line:no-debugger
     // debugger;
           this.handleGoogleMapApi(map);

    });
  }

  handleGoogleMapApi(google) {
     this.map1 = google;
    // tslint:disable-next-line:no-debugger
    debugger;
     const drawingManager = new google.maps.drawing.DrawingManager({
      drawingMode: google.maps.drawing.OverlayType.POLYGON,
      drawingControl: true,
      drawingControlOptions: {
        position: google.maps.ControlPosition.TOP_CENTER,
        drawingModes: [
          google.maps.drawing.OverlayType.MARKER,
          google.maps.drawing.OverlayType.CIRCLE,
          google.maps.drawing.OverlayType.POLYGON,
          google.maps.drawing.OverlayType.POLYLINE,
          google.maps.drawing.OverlayType.RECTANGLE
        ]
      },
      circleOptions: {
        fillColor: '#ffff00',
        fillOpacity: 1,
        strokeWeight: 5,
        clickable: false,
        editable: true,
        zIndex: 1
      }
    });
    drawingManager.setMap(this.map1);
  }
下面是我的控制台错误 在此处输入图像描述

任何帮助表示赞赏...

标签: javascriptangularangular6

解决方案


您好,您的代码抛出的错误只是说“google.maps”未定义。我建议你使用 console.log('google.maps'); 跟踪对象的状态。

在初始化对象时,您可能错过了一个重要步骤。


推荐阅读