亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

為什么這段代碼會拋出“google not defined”錯誤以及

為什么這段代碼會拋出“google not defined”錯誤以及

qq_花開花謝_0 2023-06-15 10:07:53
我正在嘗試使用帶有顯示附近餐館/咖啡館的標記的 google map api。我不斷收到以下 2 個錯誤:未捕獲的 ReferenceError:未在 index.html:47 定義谷歌未捕獲(承諾)TypeError:無法在 js?key=[API key]&callback=initialize&libraries=&v=weekly:142 at js?key=[API key] 處讀取未定義的屬性“PlacesService”(index.html:26) ]&callback=initialize&libraries=&v=weekly:142為什么我會收到此錯誤以及如何讓它工作?html, body, #map{    height: 100%;    margin: 0;    padding: 0;}<!DOCTYPE html><html><head>    <meta charset="utf-8">    <meta name="viewport" content="initial-scale=1.0, user-scalable=no">    <title>Restaurant</title>    <link rel="stylesheet" href="style.css">    <script async defer src="https://maps.googleapis.com/maps/api/js?key=API KEY=initialize&libraries=&v=weekly"></script>    <script>        function initialize() {            var center = new google.maps.LatLng(53.349804, -6.260310);            map = new google.maps.Map(document.getElementById('map'), {                center: center,                zoom: 12,            });             var request = {                 location: center,                 radius: 8047,                 types: ['cafe']             };                           var service = new google.maps.places.PlacesService(map);             service.nearbySearch(request, callback);            }            function callback(results, status) {                if(status == google.maps.places.PlaceServiceStatus.OK) {                    for (var i =0; i < results.length; i++) {                        createMarker(results[i]);                    }                }            }            function createMarker(place) {                var placeLoc = place.geometry.location;                var marker = new google.mpas.Marker({                    map: map,                    position: place.geometry.location                });            }        google.maps.event.addDomListener(window, 'load', initialize);    </script></head><body>    <div id="map">    </div>            </body></html>
查看完整描述

1 回答

?
偶然的你

TA貢獻1841條經驗 獲得超3個贊

發生的事情是您的內聯腳本在解析時立即觸發。那時你需要的地圖腳本還沒有加載。事實上,它只會在頁面的其余部分被解析后加載。

要解決此問題,請將您的內聯代碼轉移到一個.js文件中,并像加載地圖文件一樣加載它,在script帶有src指向您的文件和defer屬性的標記中。確保此腳本標記出現在地圖文件請求之后


查看完整回答
反對 回復 2023-06-15
  • 1 回答
  • 0 關注
  • 172 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號