الوعود

تعرض الطرق غير المتزامنة في Google Maps JavaScript API التعهدات.

الدعم

واجهة برمجة التطبيقات تُعرِض الطرق وعدًا.
الاتجاهات نعم
مصفوفة المسافات نعم
الارتفاع نعم
المشفِّر الجغرافي نعم
صور التكبير إلى أقصى حد نعم
الأماكن لا
خدمة الإكمال التلقائي للأماكن جزئي1
التجوّل الافتراضي نعم

الاستخدام

اطّلِع على هذا الدليل للاطّلاع على كيفية استخدام وعد JavaScript أو على الأمثلة أدناه لإجراء مكالمات غير متزامنة للطريقة باستخدام 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()