我在Rails項目中使用了驚人的gem gmaps4rails。它在我的本地機器上工作得很好,但是一旦部署在Heroku的Cedar堆棧上,javascript會在window.onload = function() { Gmaps.triggerOldOnload(); Gmaps.loadMaps(); };
上拋出一個錯誤,抱怨gmaps上不存在triggerOldOnload。再次,它在本地工作正常。Gmaps4Rails Gmaps.triggerOldOnload方法未找到javascript錯誤
下面是其中出現錯誤的整個腳本塊:
<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>
預先感謝尋找這結束了!
我做到了,但它並沒有解決Heroku上的問題。我看到有一個比我有更新的版本,所以我要更新到最新版本,並從頭開始再次嘗試。我會公佈結果。 – David
好吧,我更新了最新版本的gem,並再次執行'rails generate gmaps4rails:install.' gem繼續在我的開發環境中工作,並且繼續在生產中拋出javascript錯誤,因爲它無法找到triggerOldOnload方法。這真的是一個很棒的寶石,我很困惑它爲什麼會在生產中產生錯誤。 – David
您是否重新編譯了您的資產?我擔心你會在某處存放一些緩存。 – apneadiving