वादे

Google Maps JavaScript API के सभी एसिंक्रोनस तरीके, प्रॉमिस दिखाते हैं.

सहायता

एपीआई तरीके, प्रॉमिस दिखाते हैं
रास्ता हां
Distance Matrix हां
ऊंचाई हां
जियोकोडर हां
ज़्यादा से ज़्यादा ज़ूम करने पर दिखने वाली इमेज की सुविधा हां
जगहें नहीं
Places AutocompleteService आंशिक तौर पर1
Streetview हां

इस्तेमाल

Google Maps JavaScript API के साथ एसिंक्रोनस तरीके से कॉल करने के लिए, प्रॉमिस इस्तेमाल करने के बारे में यह गाइड पढ़ें या नीचे दिए गए उदाहरण देखें.

एसिंक और अवाइट

अवाइट ऑपरेटर का इस्तेमाल, प्रॉमिस के पूरे होने का इंतज़ार करने के लिए किया जाता है. इसका इस्तेमाल सिर्फ़ एसिंक फ़ंक्शन के अंदर किया जा सकता है.

const app = async () => {
  const elevationService = google.maps.ElevationService();
  const locations = [{lat: 27.986065, lng:86.922623}];

  const response = await elevationService.getElevationForLocation({locations});
  console.log(response.results);
};

app();

देन, कैच, और फ़ाइनली

प्रॉमिस ऑब्जेक्ट में then, catch, और finally तरीके होते हैं. ये तरीके, कॉलबैक फ़ंक्शन लेते हैं.

const elevationService = google.maps.ElevationService();
const locations = [{lat: 27.986065, lng:86.922623}];

const promise = elevationService.getElevationForLocation({locations});

promise
    .then((response) => {
      console.log(response.results);
    })
    .catch((error) => {
      console.log(error);
    });
    .finally(() => {
      console.log('done');
    });

एसिंक कॉलबैक पैटर्न

कॉलबैक पैटर्न अब भी मान्य है और इसका इस्तेमाल किया जा सकता है.

const elevationService = google.maps.ElevationService();
const locations = [{lat: 27.986065, lng:86.922623}];

const callback = (results, status) => {
  if (status === 'OK') {
    console.log(results);
  } else {
    // handle this case
  }
};

elevationService.getElevationForLocation({locations}, callback);

  1. फ़िलहाल, प्रॉमिस का इस्तेमाल सिर्फ़ getPlacePredictions() में किया जा सकता है.