2017-05-17 13 views
0

私はReferenceError googleが定義されていません。"Googleは定義されていません"がGoogle Maps APIが含まれています

私は解決策を探しましたが、何も役に立たなかった。

アイデア? THX

編集:index.htmlを内の関連するコード

:index.jsで

<script src="dojo/dojo-release-1.12.2/dojo/dojo.js"></script><!--Dojo Script--> 
    <script src="js/index.js"></script> 

    <link rel="stylesheet" href="css/bootstrap.min.css"> 
    <link rel="stylesheet" href="css/index.css"> 
</head> 
<!--Google Maps API--> 
    <script type="text/javascript" src="https://maps.googleapis.com/maps/api/js?key=APICode&callback=initMap" async defer></script> 
    <script src="js/jquery.min.js"></script> 
    <script src="js/bootstrap.min.js"></script> 
</body> 

Googleマップで何かを関連機能:の

function setMapOnAll(map) { 
    for (i = 0; i < markers.length; i++) { 
     markers[i].setMap(map); 
    } 
} 

function RefreshMap() { 
    location.reload(); 
    initMap(); 
} 

function initMap() { 
var loggedin = localStorage.getItem("loggedIn"); 
if(loggedin == 0) { 
    var place = {lat: 52.558643, lng: 13.351725}; 
    map = new google.maps.Map(document.getElementById('map'), { 
     zoom: 3, 
     center: place 
    }); 
} 

else { 
    map = new google.maps.Map(document.getElementById('map'), { 
     //zoom: 3, 
     //center: place 
    }); 

    GetLocations(); 

    var geocoder = new google.maps.Geocoder(); 
    document.getElementById("btnAdd").addEventListener("click", function() { 
     geocodeAddress(geocoder, map); 
    }); 
} 
} 

function GetLocationsDojo() { 
require(["dojo/store/JsonRest"], function(JsonRest) {    
    var username = localStorage.getItem("username"); 
    var session = localStorage.getItem("sessionID"); 

    var store = new JsonRest ({ 
     target: "http://localhost:8080/FAPServer/service/fapservice/getStandort", 
     headers: { 
      "Content-Type": "application/json" 
     } 
    }); 

    locations = []; 
    for(i = 0; i < users.length; i++) { 
     store.get("?login=" + username + "&session=" + session + "&id=" + users[i]).then(
     function(data) { 
      //console.log(data);  

      var breite = data.standort.breitengrad; 
      var laenge = data.standort.laengengrad; 

      var marker = new google.maps.Marker({ 
       position: new google.maps.LatLng(breite, laenge), 
       map: map 
      }); 

      infowindow = new google.maps.InfoWindow(); 
      google.maps.event.addListener(marker, 'click', (function(marker, i) { 
       return function() { 
        infowindow.setContent(data.loginName); 
        infowindow.open(map, marker); 
       } 
      })(marker, i)); 

      markers.push(marker); 

      //bounds map 
      var bounds = new google.maps.LatLngBounds(); 
      for (var i = 0; i < markers.length; i++) { 
       bounds.extend(markers[i].getPosition()); 
      } 
      map.fitBounds(bounds);    
     }, 
     function(data) {} 
     ); 
    } 
});   
} 
+0

どこで/いつRefreshMapを呼び出しますか? – duncan

+0

ウェブサイトのボタンを押した場合

+1

マーカはどこに作成しますか?あなたのinitMap関数にはありませんか? data.standort.breitengradとdata.standort.laengengradの値はどのように見えるのですか? – duncan

答えて

1

async defer遅延実行スクリプト。 index.jsスクリプトの後で実行している可能性があります(アクセスしようとしている変数を追加している可能性があります)。

関連する問題