Rails生产:javascript无法正常工作

时间:2015-01-08 10:38:28

标签: javascript ruby-on-rails highcharts

最近我在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.minicolorswidget(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其他脚本正常运行

2 个答案:

答案 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中并包含用于高级图表工作的必要脚本