GMAPS4RAILS GMAPS.TriggerOlDonload 메소드를 찾을 수 없음 JavaScript 오류가 발생했습니다
-
11-12-2019 - |
문제
Rails 프로젝트에서 놀라운 Gem Gmaps4Rails를 사용하고 있습니다.그것은 내 로컬 컴퓨터에서 잘 작동하지만 Heroku의 Cedar 스택에 배치 한 번 JavaScript는 window.onload = function() { Gmaps.triggerOldOnload(); Gmaps.loadMaps(); };
에 오류를 발생시켜 generacodonload가 Gmaps에 존재하지 않는다고 불평합니다.다시, 그것은 로컬로 잘 작동합니다.
여기에 오류가 나타나는 전체 스크립트 블록이 나타납니다.
<SCRIPT type="text/javascript" charset="utf-8">
Gmaps.map = new Gmaps4RailsGoogle();
Gmaps.load_map = function() {
Gmaps.map.map_options.auto_adjust = true;
Gmaps.map.initialize();
Gmaps.map.markers = [{"title":"Project 1","lat":18.71381,"lng":-72.35581}, {"title":"Project 2","lat":18.71567,"lng":-72.35603}];
Gmaps.map.markers_conf.do_clustering = true;
Gmaps.map.create_markers();
Gmaps.map.adjustMapToBounds();
Gmaps.map.callback();
};
Gmaps.oldOnload = window.onload;
window.onload = function() { Gmaps.triggerOldOnload(); Gmaps.loadMaps(); };
</SCRIPT>
.
이 모든 것을 보면서 미리 감사드립니다!
해결책
GEM을 업데이트했지만 앱에서 자산을 복사하는 명령을 다시 실행하지 않았습니다.
다른 팁
GMAPS4RAILS를 업그레이드 한 후 비슷한 문제가있었습니다.
문제가 생성 된 JS 파일의 파일 이름과 구조로 변경되었습니다.
application.js
이제는 번들 자산에 포함되어야하는 GMAPS4RAILS.BASE.JS가 있습니다.이것은 발견 할 수없는 메서드가있는 곳입니다.
//= require gmaps4rails/gmaps4rails.base.js
.
또한
//= require gmaps4rails/googlemaps.js
.
는 이제 입니다
//= require gmaps4rails/gmaps4rails.googlemaps.js
. 귀하의 마일리지는 다를 수 있습니다 - 나는 당신이 사용하고있는 레일 또는 GMAP4RAILS 버전을 모르지만, RAILS 3.2.16 / GMAPS4RAILS v2 (COMMIT 52D7161409A060DDEABC87AA3C10049ADC5EDD4D, 지침에 따라 여기서 섹션 맵 JavaScript :
.<script src="//maps.google.com/maps/api/js?v=3.13&sensor=false&libraries=geometry" type="text/javascript"></script>
<script src="//google-maps-utility-library-v3.googlecode.com/svn/tags/markerclustererplus/2.0.14/src/markerclusterer_packed.js" type="text/javascript"></script>