שיטות אסינכרוניות בהחזרה של JavaScript API במפות Google הבטחות.
תמיכה
API | שיטות להחזרת הבטחות |
---|---|
מסלול | כן |
מטריצת המרחק | כן |
גובה | כן |
Geocoder (בקואורדינטות) | כן |
כמות מקסימלית של תמונות בזום | כן |
מקומות | לא |
Places InventoryService | באופן חלקי1 |
Streetview | כן |
שימוש
לראות את זה מדריך לגבי שימוש בהבטחות או בדוגמאות שבהמשך לביצוע הפעלות method אסינכרוניות עם JavaScript API של מפות Google.
אסינכרוני וממתינים
המתנה למפעיל משמש להמתנה להבטחה. אפשר להשתמש בה רק בתוך פונקציה אסינכרונית.
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 object
יש שיטות 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);
-
בשלב הזה, הבטחות נתמכות רק ב
getPlacePredictions()
.↩