पर एक वादा जोड़ना मुझे जावास्क्रिप्ट/jQuery में किसी फ़ंक्शन से एक सरणी वापस करने की आवश्यकता है, लेकिन सरणी सेट होने से पहले फ़ंक्शन वापस आ रहा है (क्योंकि यह एक AJAX कॉल है)।Google मानचित्र API कॉल
मुझे सलाह दी गई है कि मैंने एक वादा का उपयोग करने की सलाह दी है लेकिन मैंने पहले इनका उपयोग नहीं किया है और अब तक मेरे कोड में इसे लागू करने में असमर्थ रहा है।
mapClass.setLatLng = function(location, clubs) {
document.geoCodeRequestCompleteFlag = 0;
geocoder = new google.maps.Geocoder();
geocoder.geocode({'address' : location}, function(results, status) {
//console.log(results);
if(status === "OK") {
var latLngArray = [];
latLngArray.push(parseFloat(results[0].geometry.location.lat()));
latLngArray.push(parseFloat(results[0].geometry.location.lng()));
var sortedArray = mapClass.calculateDistances(clubs, latLngArray);
return sortedArray;
}
});
}
आप देख सकते हैं, sortedArray चर रिक्त है जब मैं लौट रहा है: यहाँ मेरी कोड है। क्या किसी के पास कोई विचार है कि मैं इस में ब्लॉकिंग कोड कैसे जोड़ सकता हूं ताकि यह सुनिश्चित किया जा सके कि लौटने से पहले सरणी चर सेट हो जाएं? धन्यवाद
शानदार जवाब और स्पष्टीकरण। धन्यवाद। – devoncrazylegs