2013-07-28 1 views
0

Google지도 앱의 전역 개체는 무엇입니까? Google지도 전역 객체; coffeescript에 의해 생성 된 js가 작동하지 않음

나는 다음과 같은 자바 스크립트를 생성 커피 스크립트에

,에서 JS를 다시 썼다 :

// Generated by CoffeeScript 1.6.3 
(function() { 
    var errorFlag, initialize; 

    google.maps.visualRefresh = true; 

    initialize = function() { 
    var map, mapOptions; 
    mapOptions = { 
     zoom: 15, 
     mapTypeId: google.maps.MapTypeId.ROADMAP 
    }; 
    map = new google.maps.Map(document.getElementById('map-canvas'), mapOptions); 
    if (navigator.geolocation) { 
     return navigator.geolocation.getCurrentPosition(function(position) { 
     var infowindow, pos; 
     pos = new google.maps.LatLng(position.coords.latitude, position.coords.longitude); 
     infowindow = new google.maps.InfoWindow({ 
      map: map, 
      position: pos, 
      content: 'Location found' 
     }); 
     return map.setCenter(pos); 
     }, function() { 
     return handleNoGeolocation(true); 
     }); 
    } else { 
     return handleNoGeolocation(false); 
    } 
    }; 

    handleNoGeolocation(errorFlag = function() { 
    var content, infowindow, options; 
    if (errorFlag) { 
     content = 'Geolocation failed'; 
    } else { 
     content = 'Your browser does not support Geolocation'; 
    } 
    options = { 
     map: map, 
     position: new google.maps.LatLng(60, 105), 
     content: content 
    }; 
    infowindow = new google.maps.InfoWindow(options); 
    return map.setCenter(options.position); 
    }); 

    google.maps.event.addDomListener(window, 'load', initialize); 

}).call(this); 

응용 내가 그들의 웹 사이트에서 JS를 사용할 때 작동하지만 나는 생성 된 JS를 사용하는 경우 coffeescript로. 내 생각 엔지도 변수는 코드의 전역 변수이므로 전역 개체에도 바인딩해야합니다. 나는 window.map을 시도했지만 그 중 하나는 작동하지 않았다. 어떤 아이디어?

답변

0

handleNoGeolocation 함수 정의가 잘못 컴파일되었습니다. 내가 뭔가 들여 쓰기 잘못된 추측이 아니라

handleNoGeolocation(errorFlag = function() { 
    //.. 
    //.. 
}); 

보다
var errorFlag, initialize, handleNoGeolocation; 
//.. 
//.. 
handleNoGeolocation = function (errorFlag) { 
    //.. 
    //.. 
}; 

를하고 있어야합니다.

희망이 도움이됩니다.

+0

덕분에 많은 도움이되었습니다. – tldr

+0

당신은 환영합니다 :) – shakib

관련 문제