Googleマップ用のnpmで利用可能なパッケージはありますか?または私は本当にこれを貼り付けることになっています
<script src="https://maps.googleapis.com/maps/api/jskey=YOUR_API_KEY">
</script>
私のindex.htmlに、更新ごとにこのjsファイルをダウンロードしますか?
ときどきReferenceError: google is not defined
。
公式のGoogleマップnpmパッケージ @ google/maps がこれを行います。で使用できます
var googleMapsClient = require('@google/maps').createClient({
key: 'your API key here'
});
ただし、上記のスクリプトを使用しても、スクリプトは2回ダウンロードされません。多くのブラウザはjavascriptファイルをキャッシュするため、https://maps.googleapis.com/maps/api/jskey=YOUR_API_KEY
は数回ダウンロードして停止します。browserifyでgoogleマップモジュールを使用しても何も変わりません。
はい、いくつかのパッケージがあります。これを試してみることができます。
React + TypeScriptで作業しているときに同じ問題に遭遇しました。
npm install @google/maps
しかし、TypeScriptコンパイラはエラーを出し、インストールするためのこの行も提供してくれました。
npm install @types/google__maps
そしてそれは働いた。
import { createClient } from "@google/maps"
const googleMaps = createClient({
key: "YOUR_API_KEY"
})
ライブラリを適切な方法で呼び出していないため、ReferenceError
が表示されている可能性があります。
Googleのドキュメント では、APIの読み込みが完了したときに呼び出されるコールバック(initMap
など)を指定することを推奨しています。 APIがロードされ、google
がすでに定義されていることを確認するために、Mapで行う必要のあることはすべて、その関数内で行う必要があります。
<script async defer
src="https://maps.googleapis.com/maps/api/js?key=YOUR_API_KEY&callback=initMap">
</script>