Sprockets:编译独立 javascript/stylesheet 文件
Sprockets: Compile standalone javascript/stylesheet file
我补充了:
//= link_directory ../custom/javascripts .js
- 资产
- 自定义
- javascripts
- application.js
到 app/assets/config/manifest.js
并假设这样我就可以从我的视图中单独引用生活在 custom
文件夹中的资产:
= javascript_include_tag "custom/javascripts/application", 'data-turbolinks-track': 'reload'
但是我得到这个错误:
The asset "custom/javascripts/application" is not present in the asset pipeline.
如何从默认 javascripts/application.js
文件中单独编译 custom/javascripts/application.js
?
我想向您推荐一种不同的方法。
而不是向 manifest.js 添加一个文件夹,为什么不在 app/assets/javascripts 中添加一个新的 custom_application.js,创建一个文件夹 app/assets/javascripts/custom 并在 [=41= 中为该文件夹添加 require ]?
在你的app/assets/javascripts/custom_application.js(以及你需要的一切)
//= require_tree ./custom
在你的前端 app/views/layouts/application.html.erb 头部包含这个文件
<%= javascript_include_tag 'custom_application', 'data-turbolinks-track': 'reload' %>
并在您的 config/initializers/assets.rb 中添加此行:
Rails.application.config.assets.precompile += %w( custom_application.js )
编辑:
如果你需要另一个文件夹而不是默认文件夹,你可以在 app/assets 中添加它,然后编辑你的 app/assets/config/manifest.js:
//= link_tree ../images
//#= link_directory ../javascripts .js
//= link_directory ../custom .js
//= link_directory ../stylesheets .css
在您的 app/views/layouts/application.html.erb 中您不需要指定您的路径
<%= javascript_include_tag 'application', 'data-turbolinks-track': 'reload' %>
但是,如果您同时需要来自 javascript 和自定义文件夹的 application.js,我认为您需要重命名 custom/application.js
我补充了:
//= link_directory ../custom/javascripts .js
- 资产
- 自定义
- javascripts
- application.js
- javascripts
- 自定义
到 app/assets/config/manifest.js
并假设这样我就可以从我的视图中单独引用生活在 custom
文件夹中的资产:
= javascript_include_tag "custom/javascripts/application", 'data-turbolinks-track': 'reload'
但是我得到这个错误:
The asset "custom/javascripts/application" is not present in the asset pipeline.
如何从默认 javascripts/application.js
文件中单独编译 custom/javascripts/application.js
?
我想向您推荐一种不同的方法。 而不是向 manifest.js 添加一个文件夹,为什么不在 app/assets/javascripts 中添加一个新的 custom_application.js,创建一个文件夹 app/assets/javascripts/custom 并在 [=41= 中为该文件夹添加 require ]?
在你的app/assets/javascripts/custom_application.js(以及你需要的一切)
//= require_tree ./custom
在你的前端 app/views/layouts/application.html.erb 头部包含这个文件
<%= javascript_include_tag 'custom_application', 'data-turbolinks-track': 'reload' %>
并在您的 config/initializers/assets.rb 中添加此行:
Rails.application.config.assets.precompile += %w( custom_application.js )
编辑: 如果你需要另一个文件夹而不是默认文件夹,你可以在 app/assets 中添加它,然后编辑你的 app/assets/config/manifest.js:
//= link_tree ../images
//#= link_directory ../javascripts .js
//= link_directory ../custom .js
//= link_directory ../stylesheets .css
在您的 app/views/layouts/application.html.erb 中您不需要指定您的路径
<%= javascript_include_tag 'application', 'data-turbolinks-track': 'reload' %>
但是,如果您同时需要来自 javascript 和自定义文件夹的 application.js,我认为您需要重命名 custom/application.js