Javascript Google Maps API--设置标记结果的图标时出错:“;如果没有';新'&引用;

Javascript Google Maps API--设置标记结果的图标时出错:“;如果没有';新'&引用;,javascript,google-maps-api-3,Javascript,Google Maps Api 3,我试图使用GoogleMapsAPI创建一些要添加的标记,但是如果我尝试指定一个图标,我会得到一个错误:“如果没有'new',则无法调用构造函数错误” 我正在通过洛卡霍斯特进行调查 我尝试过的事情: 创建标记,然后设置图标 API的不同版本 将API密钥插入JSFIDLE。(没有错误。) 删除/注释掉图标行。(使用默认图标运行正常。) 这段代码几乎是从Google提供的JSFIDLE一字不差地获得的,它在那里工作,但不在我正在处理的页面上 const latlng = new google.

我试图使用GoogleMapsAPI创建一些要添加的标记,但是如果我尝试指定一个图标,我会得到一个错误:“如果没有'new',则无法调用构造函数错误”

我正在通过洛卡霍斯特进行调查

我尝试过的事情:

  • 创建标记,然后设置图标
  • API的不同版本
  • 将API密钥插入JSFIDLE。(没有错误。)
  • 删除/注释掉图标行。(使用默认图标运行正常。)
这段代码几乎是从Google提供的JSFIDLE一字不差地获得的,它在那里工作,但不在我正在处理的页面上

const latlng = new google.maps.LatLng(this.location[0], this.location[1]);
this.marker = new google.maps.Marker({
  position: latlng,
  icon: {
    path: google.maps.SymbolPath.CIRCLE,
    scale: 10
  },
  draggable: false
});
我应该在指定的位置有一个圆圈图标,但是我得到了以下结果:

js?v=weekly&key=(APIKEY):53未捕获的类型错误:没有“new”就无法调用类构造函数错误
在新的Yc(:53)
在对象处。u.$c(:53)
at:56
at:56
at:56
在uu.nf.setIcon(:66)
at.nf..T.setValues(:165)
at_uu.nf.mf[作为构造函数](:79)
在新的uu.nf(:79)
位于User.createMarker(classes.js:329)

在我看来,API代码中存在一个问题,使得调试触发错误的实际问题变得困难


如果您有任何建议,我们将不胜感激。

您把这个位置安排在一个班级了吗?我将官方的JSFIDLE更改为使用类,它可以正常工作

function initMap() {
  var map = new google.maps.Map(document.getElementById('map'), {
    zoom: 4,
    center: {
      lat: -25.363882,
      lng: 131.044922
    }
  });

  var Location = class Location {
    constructor(lat, lng) {
      this.location = [lat, lng]
      const latlng = new google.maps.LatLng(this.location[0], this.location[1]);
      this.marker = new google.maps.Marker({
        position: latlng,
        icon: {
          path: google.maps.SymbolPath.CIRCLE,
          scale: 10
        },
        draggable: false
      });
      this.marker.setMap(map);
    }

  }

  var location = new Location(-25.363882, 131.044922);

}

发生的情况是,API正在调用setIcon函数链中的全局错误对象(尽管显然完全没有错误),这导致了一个错误,因为我用一个我天真地尝试添加到项目中的自定义错误类覆盖了它

错误信息:


在本地主机上有什么工作吗?也许API密钥仅限于您的生产域?是的,其他一切都很好。就像我上面提到的,如果我只是注释掉图标,它运行时不会有任何问题(但是使用默认图标,我不想要)。是的,它是一个更大类的一部分。