Uncaught TypeError: Невозможно прочитать свойство 'route' из неопределенного - PullRequest
0 голосов
/ 03 октября 2019

Я только начинаю со службы маршрутов. Я жестко запрограммировал несколько мест, чтобы убедиться, что это работает. Я продолжаю получать ту же ошибку (Uncaught TypeError: Невозможно прочитать свойство 'route' из неопределенного), и я не могу понять, почему. Код является почти точной копией кода из документации.

    <script>
    var map;
    var directionsService;
    var directionsRenderer;

    function initMap() {
      var directionsService = new google.maps.DirectionsService();
      var directionsRenderer = new google.maps.DirectionsRenderer();

      var chicago = new google.maps.LatLng(38.627003, -90.199402);
      var mapOptions = {
        zoom:10,
        center: chicago
      }
      map = new google.maps.Map(document.getElementById('map'), mapOptions);
      directionsRenderer.setMap(map);
    }

    function calcRoute(start, end) {

      var request = {
        origin: "St Louis, MO",
        destination: "Chicago, IL",
        travelMode: 'DRIVING'
      };
        console.log(request);
      directionsService.route(request, function(result, status) {
        if (status == 'OK') {
          directionsRenderer.setDirections(result);
        }
      });
    }
</script>

1 Ответ

0 голосов
/ 03 октября 2019

Nevermind! Я понял. Я повторно объявлял directionService и directionRender внутри initMap (), что изменило область действия этих двух переменных! Я изменил его на следующее ниже, и это сработало.

    var map;
    var directionsService;
    var directionsRenderer;

    function initMap() {
      directionsService = new google.maps.DirectionsService();
      directionsRenderer = new google.maps.DirectionsRenderer();
...