Мне очень сложно выяснить проблему с использованием следующего сценария с помощью API Карт Google v3. Я пытаюсь геокодировать неизвестное количество записей (вытащил из базы данных) и создать PolyLine из результатов. В коде есть рубин, но это не должно иметь отношения к правилу JS?Проблема с рассмотрением javascript внутри вызова функции
var trippath = new Array();
function drawHistoryPath(coordinates) {
var tripHistoryPath = new google.maps.Polyline({
map: map,
path: coordinates,
strokeColor: "#6A0606",
strokeOpacity: 1.0,
strokeWeight: 5
});
}
<% @pins.each do |ps| %>
geocoder.geocode({ 'address': '<%= escape_javascript(ps.location) %>'}, function(results, status) {
if (status == google.maps.GeocoderStatus.OK) {
trippath.push(results[0].geometry.location);
} else {
alert("Geocode was not successful finding <%= escape_javascript(ps.location) %> for the following reason: " + status);
}
});
<% end %>
drawHistoryPath(trippath);
Когда drawHistoryPath вызывается, trippath не существует, но я подтвердил, что в настоящее время правильно заполняется внутри функции геокодера. Любая идея, почему она не соблюдает глобальную сферу?
В значительной степени делает вас моим героем – Ryan
Ха-ха спасибо! Ну удачи. На днях я напишу свой собственный код с этим материалом геокодирования. – Pointy