このたび、開発者が Google Maps Platform を利用するための新しい方法として、Web Components のプレビュー版を提供いたします。まずは、Google マップの機能と高度なマーカーの機能の Web Components にアクセスいただけるようになりますが、今後より多くの機能を追加していく予定です。さらに、オープンソースの Extended Component Library を立ち上げ、そこでプレイスデータの視覚的な表現など、より高度なコンポーネントを提供します。このライブラリでは、Maps JavaScript API がそのまま提供するものをさらに上回るベスト プラクティス、共通 UI / UX パターン、応答性、ユーザー補助機能がカプセル化されます。
Web Components はよく利用されている W3C 標準であり、開発者が HTML、CSS、JS を再利用可能なカスタムの HTML 要素にカプセル化できます。この再利用可能コンポーネントには、ある場所の評価を表示するような個々の機能から、より複雑なビジネス ロジックまで、さまざまなものがあります。Web Components は、あらゆる JS フレームワークと簡単に相互運用できるため、従来より習得時間が短く、コードがシンプルで、可読性が向上しており、開発者がより迅速に作業しやすくなっています。
開発者は、Maps JavaScript API から直接 Google マップと高度なマーカーの Web Components にアクセスできるので、JavaScript をほとんど、またはまったく使用せずこれらの UI 機能を簡単、迅速に統合できます。Google Maps Platform API キーを取得し(高度なマーカーを使用するには、マップ ID を持つマップも必要です)、ドキュメントをご確認ください。
Map コンポーネントは、ウェブページ上に地図を表示し、HTML で Map コンポーネントの内部にマップ関連の追加要素(高度なマーカーなど)を表示できます。また、マップ ID を適用することで、Cloud ベースのマップのスタイル設定を使用してマップのデザインを変更できます。
Maps JavaScript API の Web Components はプレビュー版ですが、Beta チャンネルからお試しいただけます。
<html>
<body>
<script async
src="https://maps.googleapis.com/maps/api/js?key=YOUR_API_KEY&libraries=maps&v=beta&callback=initMap"></script>
<gmp-map style="height: 500px;"
center="41.081736,29.009206"
zoom="10">
</gmp-map>
<script>
function initMap() { console.log('Maps JavaScript API loaded.'); }
</script>
</body>
</html>
HTML のコードサンプル
高度なマーカーのコンポーネントを使用すると、マップ上にマーカーを表示できます。マーカー ライブラリをスクリプト ローダーに、マップ ID をマップ要素にそれぞれ追加すると、高度なマーカーを使用できるようになります。
src="https://maps.googleapis.com/maps/api/js?key=YOUR_API_KEY&libraries=maps,marker&v=beta&callback=initMap"></script>
zoom="10"
map-id="DEMO_MAP_ID">
<gmp-advanced-marker position="41.081736,29.009206"
title="Istanbul"></gmp-advanced-marker>
Google Maps Platform では、優れた地理空間データを提供していますが、そのデータをさまざまなスタイルが適用された UI 要素で表示するには、何行もの複雑なコードが必要になることがあります。Google は、Maps JavaScript API 用の Extended Component Library により、数行の HTML を記述するだけでアクセス、カスタマイズ、作成が可能な Google レベルの構成要素を各開発者に提供することを目指しています。このオープンソース ライブラリは、Maps JavaScript API から利用可能な Web Components を基に構築されたもので、定型文を減らし、ベスト プラクティスと共通 UI / UX パターンをカプセル化し、すぐにモバイルにも対応できます。また、各コンポーネントを簡単にカスタマイズして、自社ブランドのように見せられるグローバル スタイル設定トークンを備えています。スタイル設定、場所の詳細、オートコンプリートなどのためのさまざまコンポーネントも別途用意されています。
以下の 3 行のコードで、特定の場所に関する詳細を表示できます。
<!-- unpkg.com は Google と提携していません-->
<script async type="module"
src="https://unpkg.com/@googlemaps/extended-component-library@~0.1">
<gmpx-api-loader key="YOUR_API_KEY"></gmpx-api-loader>
<gmpx-place-overview place="ChIJVVVVnvlHDW0Rwyod-_ddhAw"></gmpx-place-overview>
場所の ID を見つけるには、Place ID Finder デモまたは Places API の Find Place 検索を使用します。
これらのコンポーネントには、優れたカスタマイズ機能と拡張機能が組み込まれています。たとえば、以下のように Place Overview コンポーネントでルートボタンを指定すると、その場所へのルート案内を開始するボタンが生成されます。
<gmpx-place-overview place="ChIJVVVVnvlHDW0Rwyod-_ddhAw"
size="medium">
<gmpx-place-directions-button slot="action">
ルート
</gmpx-place-directions-button>
</gmpx-place-overview>
Extended Component Library の使用を開始するには、GitHub と npm をご確認ください。
今後も、HTML だけで地理空間ウェブ エクスペリエンスを作成するための新しい Web Components をお届けしていきます。Maps JavaScript API の Web Components を使用するための最新情報とその他のサンプルについては、こちらのドキュメントをご覧ください。皆様が Web Components を使用して何を作成されるかを楽しみにしております。
Google Maps Platform に関する詳しい情報はこちらをご覧ください。ご質問やフィードバックはページ右上の「お問い合わせ」より承っております。