Rails 生产:javascript 不工作

Rails production: javascript not working

最近我在 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 开始,其余脚本工作正常

我在 question

的帮助下找到了解决方案

我从 application.js

中移除
//= require highcharts/highcharts
//= require highcharts/highcharts-more

只保留

//= require highcharts/highstock

highstock.js 保留在 /vendor/assets/javascripts 中并包含 highcharts 工作所需的脚本

我知道这个问题已经解决了,但实际上我最近遇到了同样的问题。我通过将我的 jQuery 代码包装在以下代码中来修复它;

    $(document).ready(

     (custom JS goes here)

)

如果您(或将来的任何人)遇到同样的问题,我会说这是 Rails 如何加载 CSS/HTML 和 jQuery 的原因。显然 jQuery 在 Rails 应用程序中作为头部加载,因此它已加载但加载后无法访问。