我为每个控制器都有一个单独的 scss 文件,并且我不会将它们全部导入 application.css 文件,以便我可以在布局中包含控制器特定的样式表和 js 文件。
所以在布局中我这样做:
<%= stylesheet_link_tag "application" %>
<%= stylesheet_link_tag params[:controller], :media => "all" %>
<%= javascript_include_tag 'application' %>
<%= javascript_include_tag params[:controller] %>
但是当我运行 rake assets:precompile 时,我没有得到控制器的编译资产。
我在网上寻找解决方案,但他们都表示将所需的文件添加到 config.assets.precompile 状态。而且我不知道该放什么,以便 app/assets/stylesheets 的子文件夹和 app/assets/javascripts 的子文件夹中的所有资产自动编译。
更新 1
好的,我将它们全部编译到一个文件中,但是有两个问题:
我有一个 _base.scss 文件,其中包含所有需要的变量和导入,并将 application.css 重命名为 application.css.scss 以便我可以先导入该文件:
@import 'base'; @import 'style'; @import 'forms';
我需要如何使用清单来做到这一点?找不到使用 scss 本身导入整个目录的方法。
- 我对不同控制器中的相同选择器有一些不同的操作。分离这些动作并定义女巫应该在特定页面上处理的最简单方法是什么?