我在Rails项目中使用了惊人的gem gmaps4rails。它在我的本地计算机上工作得很好,但是一旦部署到Heroku的Cedar堆栈上,JavaScript就会在window.onload = function() { Gmaps.triggerOldOnload(); Gmaps.loadMaps(); };上引发错误,并抱怨Gmap上不存在triggerOldOnload。再次,它在本地工作正常。

这是出现错误的整个脚本块:

<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,但没有重新运行命令以将 Assets 复制到您的应用中。

10-07 17:25