最近我在Rails生产上遇到了一些奇怪的错误 - 一些javascripts无效。在当地没有问题 - 一切都很完美,但生产。
我的application.js
//= require jquery
//= require jquery_ujs
//= require twitter/bootstrap
//= require moment
//= require bootstrap-datetimepicker
//= require pickers
//= require cocoon
//= require jquery.minicolors
//= require widget
//= require highcharts/highcharts
//= require highcharts/highcharts-more
//= require highcharts/highstock
//= require_tree .
无效的脚本 - jquery.minicolors
和widget
(coffescript)。
我尝试将这些脚本添加到
config.assets.precompile += %w( widget.js.coffee jquery.minicolors.js )
production.rb
中的,但这也不起作用
这很奇怪,但如果我删除
//= require highcharts/highcharts
//= require highcharts/highcharts-more
//= require highcharts/highstock
来自application.js
其他脚本正常运行
答案 0 :(得分:1)
我知道此问题已经解决,但实际上我最近也遇到过同样的问题。我通过将JS代码包装在下面的代码中来修复它;
$(document).ready(
(custom JS goes here)
)
如果您(或以后的任何人)遇到相同的问题,我想说这是Rails如何加载CSS / HTML和JS的原因。显然,JS是作为Rails应用程序中的头部加载的,因此已加载,但加载后无法访问。
答案 1 :(得分:0)
我在question
的帮助下找到了解决方案我从application.js
//= require highcharts/highcharts
//= require highcharts/highcharts-more
并且只保留
//= require highcharts/highstock
highstock.js
保留在/vendor/assets/javascripts
中并包含用于高级图表工作的必要脚本