प्रॉमिस

पूरे Google Maps JavaScript API में एसिंक्रोनस तरीके प्रॉमिस लौटाते हैं.

सपोर्ट करें

API मेथड रिटर्न प्रॉमिसेस
निर्देश हां
दूरी का मैट्रिक्स हां
ऊंचाई हां
जियोकोडर हां
ज़ूम के लिए ज़्यादा से ज़्यादा तस्वीरें हां
जगहें नहीं
जगहें ऑटोकंप्लीटसेवा कुछ हद तक1
स्ट्रीट व्यू हां

इस्तेमाल का तरीका

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() में काम करता है.