Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/403.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 谷歌地图API的困难_Javascript_Google Maps Api 3 - Fatal编程技术网

Javascript 谷歌地图API的困难

Javascript 谷歌地图API的困难,javascript,google-maps-api-3,Javascript,Google Maps Api 3,我正在尝试创建一个简单的程序,其中包含两个特定放置的目的地,并显示它们之间的方向。不管出于什么原因,我就是找不到出现的方向 <script> var directionsService = new google.maps.directionsService(); var directionsDisplay = new google.maps.directionsRenderer(); var new_york = {lat: 40.7128, lng: -74.0060

我正在尝试创建一个简单的程序,其中包含两个特定放置的目的地,并显示它们之间的方向。不管出于什么原因,我就是找不到出现的方向

<script>
  var directionsService = new google.maps.directionsService();
  var directionsDisplay = new google.maps.directionsRenderer();

  var new_york = {lat: 40.7128, lng: -74.0060};
  var los_angeles = {lat: 34.0522, lng: -118.2437};

  function initMap() {
    var mapMarkers = [];
    var map = new google.maps.Map(
        document.getElementById('map'), {zoom: 4, center: {lat: 40, lng: -99}}
    );
    var marker1 = new google.maps.Marker({
      position: new_york, 
      map: map, 
      title: 'Home'
    });
    var marker2 = new google.maps.Marker({
      position: los_angeles, 
      map: map, 
      title: 'School'
    });
  }
  calculateAndDisplayRoute: function(directionsService, directionsDisplay, new_york, los_angeles) {
  directionsService.route({
    origin: new_york,
    destination: los_angeles,
    travelMode: 'DRIVING'
  }, function(response, status) {
    if (status === 'OK') {
    directionsDisplay.setDirections(response);
    } else {
    alert('Directions request failed due to ' + status);
    }
  });
}
</script>
<script src="https://maps.googleapis.com/maps/api/js?key=AIzaSyDmA98U4We-2IAaHbxa354v_C91IktiSKM3&callback=calculateAndDisplayRoute"></script>

var directionsService=new google.maps.directionsService();
var directionsDisplay=new google.maps.directionsRenderer();
var new_york={lat:40.7128,液化天然气:-74.0060};
var los_angeles={lat:34.0522,液化天然气:-118.2437};
函数initMap(){
var mapMarkers=[];
var map=new google.maps.map(
getElementById('map'),{zoom:4,中心:{lat:40,lng:-99}
);
var marker1=新的google.maps.Marker({
职位:纽约,
地图:地图,
标题:“家”
});
var marker2=新的google.maps.Marker({
职位:洛杉矶,
地图:地图,
标题:“学校”
});
}
calculateAndDisplayRoute:函数(方向服务、方向显示、纽约、洛杉矶){
方向服务.路线({
产地:纽约,
目的地:洛杉矶,
travelMode:“驾驶”
},功能(响应、状态){
如果(状态=='OK'){
方向显示。设置方向(响应);
}否则{
警报('由于'+状态,指示请求失败);
}
});
}

我认为您的代码存在一些问题,首先您需要知道,在创建
DirectionsService
DirectionsRenderer
的新实例之前,需要加载google地图库,顺便说一句,在这种情况下:

var directionsService = new google.maps.DirectionsService();
var directionsDisplay = new google.maps.DirectionsRenderer();
由于您没有异步加载映射库,因此可以将脚本放在页面顶部,只需删除回调参数。我对您的代码做了一些更改,请在下面查看(您需要添加api密钥):

var new_york={lat:40.7128,lng:-74.0060};
var los_angeles={lat:34.0522,液化天然气:-118.2437};
函数initMap(){
var mapMarkers=[];
var map=new google.maps.map(
getElementById('map'),{zoom:4,中心:{lat:40,lng:-99}
);
var marker1=新的google.maps.Marker({
职位:纽约,
地图:地图,
标题:“家”
});
var marker2=新的google.maps.Marker({
职位:洛杉矶,
地图:地图,
标题:“学校”
});
}
函数calculateAndDisplayRoute(){
initMap();
var directionsService=new google.maps.directionsService();
var directionsDisplay=new google.maps.DirectionsRenderer();
var路由={
产地:纽约,
目的地:洛杉矶,
travelMode:“驾驶”
};
路由(路由、功能(响应、状态){
如果(状态=='OK'){
方向显示。设置方向(响应);
}否则{
警报('由于'+状态,指示请求失败);
}
});
}
calculateAndDisplayRoute()


请上传您的代码。您发布的代码中有语法错误。