1

在文件application.html.erb中,我看到了这一行

  <%= javascript_include_tag :defaults %>

这里是什么:defaults意思?它包含哪些 Javascript 文件?

4

2 回答 2

2

要在您的应用程序中包含 Prototype 和 Scriptaculous javascript 库,请将:defaults其作为源传递。使用时:defaults,如果您的公共 javascripts 目录中存在 application.js 文件,它也会被包含在内。

资源

换句话说:

  • 原型.js
  • 控件.js
  • 拖放.js
  • 效果.js
  • rails.js(这个没有在 API中列出,但包含在内)
  • application.js(如果存在)
于 2012-10-25T03:45:15.350 回答
0

在 Rails 3.0 中,:defaults选项包括 Prototype.js/Scriptaculous 和您的 application.js,尽管它比这更细微一些。在 Rails 3.2 中,改为加载jQuery 。javascript_include_tag以下是当前文档的摘录:

如果应用程序未使用资产管道,则包含默认的 JavaScript 扩展 pass :defaults 作为源。默认情况下,:defaults 加载 jQuery,并且可以在 config/application.rb 中覆盖:

config.action_view.javascript_expansions[:defaults] = %w(foo.js bar.js)

使用 :defaults 时,如果 application.js 文件存在于 public/javascripts 中,它也会被包含在最后。

Rails 中的布局和渲染指南有一个标题为Linking to JavaScript files with 的部分javascript_include_tag也涵盖了这种行为。

于 2012-10-25T03:51:18.390 回答