Javascript Set Map不是地图的实例,也不是StreetViewPanaroma的实例

Javascript Set Map不是地图的实例,也不是StreetViewPanaroma的实例,javascript,google-maps,Javascript,Google Maps,我在谷歌地图API上运行谷歌文档中的代码时遇到此错误: 我正试图遵循所写的内容,以下是我的代码: var overlay; CustomImageOverly.prototype = new google.maps.OverlayView(); function init() { var pos= {lat: 62.323907, lng: -150.109291}; var mapProp= { center:new google.maps.LatLng(po

我在谷歌地图API上运行谷歌文档中的代码时遇到此错误:

我正试图遵循所写的内容,以下是我的代码:

var overlay;
CustomImageOverly.prototype = new google.maps.OverlayView();


function init() {

    var pos= {lat: 62.323907, lng: -150.109291};
    var mapProp= {
      center:new google.maps.LatLng(pos),
      zoom:4,
      mapTypeId: google.maps.MapTypeId.TERRAIN,
      styles: [{
                  featureType: 'water',
                  elementType: 'geometry',
                  stylers: [{color: '#3498DB'},
                            {visibility: 'on'}]
                }]
    };
    var map = new google.maps.Map(document.getElementById("googleMap"),mapProp);



      var bounds = new google.maps.LatLngBounds(
        new google.maps.LatLng(62.281819, -150.287132),
        new google.maps.LatLng(62.400471, -150.005608));


        var srcImage = 'https://developers.google.com/maps/documentation/' +
        'javascript/examples/full/images/talkeetna.png';
        debugger;
        overlay = new CustomImageOverly(bounds, srcImage, map);
}

function CustomImageOverly(bounds, image, map)  {

  this.bounds_ = bounds;
  this.image_ = image;
  this.map_ = map;

  this.div_ = null;

  this.setMap(map);
}

我做错了什么?

我知道我做错了什么。我使用的是GoogleAPI方法,没有先在html中初始化GoogleAPI

我从这里得到了答案:


你在哪里对CustomImageOverly.prototype做过任何事情,比如在你链接到的代码中?我希望至少能看到CustomImageOverway.prototype=new google.maps.OverlayView;-还有其他一些CustomImageOverly.prototype.xxxx代码,否则,如果您没有更改任何功能,为什么还要麻烦自定义覆盖呢?忘记从我的代码中添加该部分了。但它仍然会抛出错误。你可能做错了什么™ 在您没有显示的代码中,我收到了一个javascript错误,发布的代码为:Uncaught in promise ReferenceError:goldenGatePosition未定义,这不是您要问的问题。请提供一个演示您的问题的副本,以复制您所询问的问题。进行了更改
    <div id="map"></div>
    <script src="https://maps.googleapis.com/maps/api/js?key=YOUR_KEY"></script>
<script src = "map.js"></script>
var map;
CustomImageOverly.prototype = new google.maps.OverlayView();

function initMap() {
  map = new google.maps.Map(document.getElementById('map'), {
    center: {
      lat: -34.397,
      lng: 150.644
    },
    zoom: 8
  });
  var bounds = new google.maps.LatLngBounds(
    new google.maps.LatLng(62.281819, -150.287132),
    new google.maps.LatLng(62.400471, -150.005608));

  // The photograph is courtesy of the U.S. Geological Survey.
  var srcImage = 'https://developers.google.com/maps/documentation/javascript/';
  srcImage += 'examples/full/images/talkeetna.png';

  overlay = new CustomImageOverly(bounds, srcImage, map);
}

function CustomImageOverly(bounds, image, map) {

  this.bounds_ = bounds;
  this.image_ = image;
  this.map_ = map;

  this.div_ = null;

  this.setMap(map);
}
google.maps.event.addDomListener(window, 'load', initMap);