Rails:在默认文件夹之外包含 Javascript_include_tag

Rails: Include Javascript_include_tag outside default folders

我有一个模板,我正试图将其包含在我的 Rails 应用程序中。 这个模板有它自己的结构,我不想弄乱它。 我们称这个模板为 "material".

我把所有文件都放在 my vendor/assets 文件夹下,所以我有这样的结构:

railsApp/vendor/assets/material/material

在最后一个 "material" 文件夹中,我有我的 JS 和 CSS 文件夹。通过这种方式,我创建了一个文件 "material.js",其中包含:

//= require material/js/jquery-2.1.1
//= require material/js/functions
//= require material/js/bootstrap

这样我就可以调用我想要的js了。

这是我的问题: 我如何从我的 application.html.erb 中调用这个 material.js ?

<%= javascript_include_tag '/vendor/assets/material/material/material', 'data-turbolinks-track' => true %> 

不起作用...

提前致谢。

我会创建一个新的 js 文件,比方说 material.js。在 app/assets/javascripts/material.js:

//= require material/material

然后在你的config/application.rb中,你需要添加:

config.assets.paths << Rails.root.join('vendor', 'assets', 'material').

您还需要将 material.js 添加到预编译列表中。在 config/initializers/assets.rb 中:

Rails.application.config.assets.precompile += %w( material.js ).

然后在你看来,你可以参考material:

javascript_include_tag 'material'