प्रॉमिस

Google Maps JavaScript API में मौजूद असाइनोक्रोनस तरीके, Promises दिखाते हैं.

सहायता

एपीआई ऐसे तरीके जो Promises दिखाते हैं
रास्ता हां
दूरी का मैट्रिक्स हां
ऊंचाई हां
जियोकोडर हां
ज़्यादा से ज़्यादा ज़ूम की गई इमेज हां
जगहें नहीं
जगहों के लिए ऑटोकंप्लीट की सुविधा आंशिक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();

फिर, कोशिश करें और आख़िर में

Promise ऑब्जेक्ट में 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() में काम करता है.