我有一组 SASS 文件,我使用 Compass 作为我的预处理器。我在 MacOSX 终端中运行 compass watch
。
我的文件是结构化的,因此我的所有代码都被编译了两次...一次在 mq.css
中使用媒体查询,一次在 no-mq.css
中不使用.非媒体查询代码适用于 IE8 和无法识别媒体查询的浏览器。
当我更改我的任何文件时,我的 mq.css
会被编译,但 no-mq.css
很少编译。如果我 compass clean
然后手动 compass compile
他们都会。如果我只运行 compass compile
而没有首先进行 clean,则只有 mq.css
编译。我可以整天运行 watch
,我的 mq.css
将继续编译。
我已经升级、降级,并且通常使用 SASS 和 Compass 的组合。我没有使用 Susy 或其他与 SASS 相关的库。我确实打开了 SASS map 。
我的 SCSS 入门包可以在这里查看:https://github.com/jhogue/scss-scaffold以防我在 config.rb
或 /sass/framework/_config.scss
中遗漏了某些内容。
我的 gem 如下:
- compass (1.0.3)
- compass 核心 (1.0.3)
- compass-import-once (1.0.5, 1.0.4)
- css_parser (1.3.5)
- fssm (0.2.10)
- libxml-ruby (2.6.0)
- 听(1.1.6,0.7.3)
- sass (3.4.7)
它不像烦人那么严重,我想知道是否有其他人遇到过这个或类似的问题。
最佳答案
我过去曾多次遇到同样的问题,并且发现当我在子目录中有部分文件时经常会发生这种情况。在每个子目录的 config.rb 文件中调用 add_import_path
通常可以修复它:
// config.rb
add_import_path "sass/framework"
当然,在观看/编译之前 compass 清洁
也是有秩序的。
关于css - "compass watch"编译一个文件而不是另一个,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29039015/