▼実現したいこと
GooGle maps APIとJavaScriptを使って画面上にGoogle mapを表示させたいです。
JavaScriptの記述はドットインストールのGoogle Maps API入門通りに進めています。
▼発生している問題・エラーメッセージ
Maps JavaScript APIでは、問題なくGoogle mapが表示されます。
しかし、Geocoding APIでは以下のエラーメッセージが発せられ、
Googlemapが表示されません。
index.html:40 Uncaught (in promise) TypeError: google.maps.Geocorde is not a constructor at initMap (index.html:40) at js?language=ja& reagion=JP&key=AIzaSyA_80g3G8chEycvaMQAJfPYk9ZC6X0t8qo&callback=initMap:141 at js?language=ja& reagion=JP&key=AIzaSyA_80g3G8chEycvaMQAJfPYk9ZC6X0t8qo&callback=initMap:141
該当のソースコード
<!DOCTYPE html> <html lang="ja"> <head> <meta charset="utf-8"> <title>Google map 練習</title> <link rel="stylesheet" href="css/styles.css"> </head> <body> <div id="target"></div> <input type="text" id="address"> <button id="search">検索</button> <script async defer src="https://maps.googleapis.com/maps/api/js?language=ja& reagion=JP&key=API_KEY&callback=initMap"> </script> <script> function initMap(){ 'use strict'; var target = document.getElementById('target'); var geocorder = new google.maps.Geocorder(); document.getElementById('search').addEventListener('click', function(){ geocorder.geocode({ address: document.getElementById('address').value },function(results,status){ if(status !== 'OK'){ alert('Failed' + status); return; } if (results[0]){ new google.maps.Map(target,{ center: results[0].geometry.location, zoom: 15, }); }else { alert('No results found'); return; } }); }); } </script> </body> </html>
Maps JavaScript APIを使う場合は、問題なく表示されます。
<!DOCTYPE html> <html lang="ja"> <head> <meta charset="utf-8"> <title>Google map 練習</title> <link rel="stylesheet" href="css/styles.css"> </head> <body> <div id="target"></div> <input type="text" id="address"> <button id="search">検索</button> <script async defer src="https://maps.googleapis.com/maps/api/js?language=ja& reagion=JP&key=API_KEY=initMap"> </script> <script> function initMap(){ 'use strict'; var target = document.getElementById('target'); var map; var tokyo = {lat: 35.681167, lng: 139.767052}; var marker; map = new google.maps.Map(target,{ center: tokyo, zoom: 18, disableDefaultUI: true, }); marker = new google.maps.Marker({ position: tokyo, map: map, }) } </script> </body> </html>
※”API_KEY”の部分は取得したものを入力しています。
APIの制限設定等はしておりません。
ドットインストールの通りに進めているので正直何が問題なのか分からず困っています。
もしかしたら有効化に時間がかかるのかもと思い、一晩おいて見ましたが変化はなしです。
Googleのコンソール上では、該当のAPIのリクエストは一度も行われていないようです。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/04/23 02:34