Panduan ini menyoroti perbedaan utama antara layanan Places lama dan class Place baru. Mengupgrade ke class Place menawarkan keunggulan yang signifikan, termasuk performa yang lebih baik dan model harga baru. Untuk mendapatkan hasil maksimal dari Places dan memastikan aplikasi Anda sudah yang terbaru, pahami perubahan yang dijelaskan dalam panduan ini.
Mengaktifkan Places API
Class Place mengandalkan layanan Places API. Untuk menggunakan fitur class Place baru, Anda harus mengaktifkan Places API (Baru) di project Google Cloud terlebih dahulu. Untuk informasi selengkapnya, lihat Memulai.
Perubahan umum
Tabel berikut mencantumkan beberapa perbedaan utama antara PlacesService
dan Place
:
PlacesService (Lama) |
Place (Baru) |
---|---|
Metode memerlukan penggunaan callback untuk menangani objek hasil dan respons google.maps.places.PlacesServiceStatus . |
Menggunakan Promise, dan berfungsi secara asinkron. |
Metode memerlukan pemeriksaan PlacesServiceStatus . |
Tidak diperlukan pemeriksaan status, dapat menggunakan penanganan error standar. |
Kolom data tempat diformat menggunakan snake case. | Kolom data tempat diformat menggunakan camel case. |
Dibatasi untuk kumpulan tetap jenis tempat dan kolom data tempat. | Memberikan pilihan yang diperluas untuk jenis tempat dan kolom data tempat yang diperbarui secara berkala. |
Perubahan khusus API
Class Place menyediakan API untuk menggunakan library Places, dan mendukung pola penggunaan modern seperti Promise. Class Place mengekspos kolom data tempat dan jenis tempat yang sama seperti Layanan Places lama, dan menyertakan banyak nilai baru untuk kolom data tempat dan jenis tempat.
Tabel ini menunjukkan cara fitur layanan Places dipetakan ke fitur class Place:
Memuat library Places
Cara aplikasi memuat library Places bergantung pada loader bootstrap yang
digunakan. Jika aplikasi Anda menggunakan impor library dinamis,
Anda dapat memuat library yang diperlukan saat runtime menggunakan operator await
untuk
memanggil importLibrary()
, seperti yang ditunjukkan di sini:
const { Place } = await google.maps.importLibrary("places");
Jika aplikasi Anda menggunakan tag pemuatan skrip langsung,
minta library places
dalam skrip loader:
<script async
src="https://maps.googleapis.com/maps/api/js?key=YOUR_API_KEY&loading=async&libraries=places&callback=initMap">
</script>
Pelajari lebih lanjut cara memuat Maps JavaScript API.
Bagian ini menyertakan panduan berikut untuk membantu Anda memigrasikan aplikasi agar dapat menggunakan Places API versi terbaru: