我有以下样式表结构:
/stylesheets
|
|-- /subfolder
| |
| + styles.css.scss
|
+ application.css.scss
application.html.haml
= stylesheet_link_tag "application", media: "all"
= stylesheet_link_tag "subfolder/styles", media: "all"
application.css.scss
@import "styleguide";
@import "styleguide/base/_all";
@import "styleguide/modules/_all-no-grid";
// Omitting rules not relevant to the problem
styles.css.scss
@import "styleguide";
@import "styleguide/grid/_grid";
@import "styleguide/modules/_all-grid";
// Omitting rules not relevant to the problem
styleguide文件存在于gem中,它借助RoR引擎为vendor/stylesheets
的资产提供服务。
当我使用预编译资产在生产中运行我的应用程序时,我遇到了指向样式指南的@import
的问题。
File to import not found or unreadable: styleguide.
Load path:
Sass::Rails::Importer([omitted]/app/assets/stylesheets/local/styles.css.scss)
(in [omitted]/app/assets/stylesheets/local/styles.css.scss)
styleguide本身没有问题,因为只要我从subfolder/styles.css.sccs
文件导入application.css.scss
文件,一切都按预期工作。
application.html.haml
= stylesheet_link_tag "application", media: "all"
application.css.scss
@import "styleguide";
@import "styleguide/base/_all";
@import "styleguide/modules/_all-no-grid";
@import "subfolder/styles"
// Omitting rules not relevant to the problem
styles.css.scss
// Same as above, included for completeness
@import "styleguide";
@import "styleguide/grid/_grid";
@import "styleguide/modules/_all-grid";
// Omitting rules not relevant to the problem
之前有没有人碰到这样的事情?有没有可能导致这种情况发生的已知问题?
答案 0 :(得分:2)
我猜这是修改styles.css.scss文件中路径的简单问题。如果你的styleguide目录不在你的子文件夹中(它看起来不像),你必须将你的导入路径指向styles.css.scss中的一个级别。 如果是这种情况,请尝试:
@import "../styleguide";
...
因为application.css.scss位于一个级别,它会在导入期间识别这些路径,而styles.css.scss则不会。