新手问题 javascript_include_tag 的不解

sanvi · 2012年08月29日 · 最后由 join 回复于 2014年01月05日 · 5728 次阅读

<%= javascript_include_tag "application", :media => "all" %> 如果我加载的话他会把所有 js 都加载进来,但是 js 好像根据名字字母来排序的

但是如果我加载 <%= javascript_include_tag "app" %> 比如单独一个叫 app.js 的 js 那么他自带的 jquery 和 jqueryui 的库就不会加载进来

那么我该如何搞掂?

挨个 include 或者在 assets/javascripts/application.js 中 require

  1. 换名字
  2. 在 application 里明文写出来 ruby //= require bbb //= require app

我之前也是遇到这样的问题:

rails 的application.js里面包含了所有在 assets/javascripts/文件件内的所有文件, 所以<%= javascript_include_tags "application" =%>会自动加载所有在assets/javascripts/里面的文件,可以把application.js里面的//= require_tree.这一行删掉,然后application.js就只加载 jquery 和 jquey-ui 了,然后可以用<%= javascript_include_tags “app" =%>这样加载你自己的 js 文件,而且可以放在任何地方。

在你的 app.js 里面写上 require jquery

如果是生产环境,你还需要在你的的 config/production.rb 里加上 config.assets.precompile = %(app.js)

需要 登录 后方可回复, 如果你还没有账号请点击这里 注册