【问题标题】:Rails 3 - Some Required JS Not Being FoundRails 3 - 未找到一些必需的 JS
【发布时间】:2013-04-16 18:01:44
【问题描述】:

我将一个 Rails 2.2.2 站点移至 Rails 3 并一直在修复它。我现在进入网站的 JS 部分,当我点击包含 JS 的页面时看到以下内容:

这可能是级联问题吗? - 在 effects.js 之前加载了 controls.js 我认为 Rails 会以某种方式处理这个问题?

这是加载 JS 的顺序:

Started GET "/assets/jquery.js?body=1"
Served asset /jquery.js - 200 OK (0ms)


Started GET "/assets/jquery-ui.js?body=1"
Served asset /jquery-ui.js - 200 OK (0ms)


Started GET "/assets/jquery.alerts.js?body=1"
Served asset /jquery.alerts.js - 200 OK (0ms)


Started GET "/assets/jquery_ujs.js?body=1"
Served asset /jquery_ujs.js - 200 OK (0ms)


Started GET "/assets/admin.js?body=1"
Served asset /admin.js - 200 OK (0ms)


Started GET "/assets/controls.js?body=1"
Served asset /controls.js - 200 OK (0ms)


Started GET "/assets/dragdrop.js?body=1"
Served asset /dragdrop.js - 200 OK (0ms)


Started GET "/assets/effects.js?body=1"
Served asset /effects.js - 200 OK (0ms)


Started GET "/assets/jquery.validate.min.js?body=1"
Served asset /jquery.validate.min.js - 200 OK (0ms)


Started GET "/assets/prototype.js?body=1"
Served asset /prototype.js - 200 OK (0ms)


Started GET "/assets/application.js?body=1"
Served asset /application.js - 200 OK (3ms)


Started GET "/assets/jquery-ui.css?body=1"
Served asset /jquery-ui.css - 200 OK (0ms)


Started GET "/assets/jquery.alerts.css?body=1"
Served asset /jquery.alerts.css - 200 OK (0ms)


Started GET "/assets/default.css?body=1"
Served asset /default.css - 200 OK (0ms)


Started GET "/assets/jquery.js?body=1"
Served asset /jquery.js - 200 OK (0ms)


Started GET "/assets/jquery-ui.js?body=1"
Served asset /jquery-ui.js - 200 OK (0ms)

application.js 文件如下所示:

//= require jquery
//= require jquery_ujs
//= require_tree .

我该如何解决这个问题?

非常感谢!

/app/assets/javascript

【问题讨论】:

  • 你安装了 jquery-rails 和prototype-rails gems 吗?这将导致资产管道出现问题。只安装一个并试一试。
  • @Ken 我都没有安装 - 我感觉这些 JS 文件只是在 Rails 2 上运行时被放入公用文件夹中。我是否需要这些 gem 之一才能获得 JS 依赖项被发现?
  • 是的 - 安装任何一个并试一试。
  • @Ken “gem install prototype-rails” 并重新启动 - FireBug 中的错误相同。
  • 您是否按照安装说明进行操作? github.com/rails/prototype-rails 如果您是资产管道的新手,请阅读文档。 guides.rubyonrails.org/asset_pipeline.html

标签: javascript ruby-on-rails-3 prototypejs


【解决方案1】:

需要在application.js中指定加载顺序:

//= require jquery
//= require jquery_ujs
//= require prototype/prototype
//= require prototype/effects
//= require prototype/dragdrop
//= require prototype/controls
//= require_tree .

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-08-28
    • 1970-01-01
    • 1970-01-01
    • 2012-03-03
    • 2015-10-26
    相关资源
    最近更新 更多