css - "compass watch"编译一个文件而不是另一个

标签 css ruby sass rubygems compass

我有一组 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/

相关文章:

html - 如何在悬停时隐藏导航中的分隔线?

html - 我如何调整圆半径以适合其中的段落

ruby-on-rails - ruby on rails 模型验证中的浮点精度

ruby - 使用序列化和存储方法有什么区别

css - 1 个 sass block 中的多个标签

javascript - 切换 Angular css 类

jquery - 对下一个伪类重复 jQuery addClass 一定次数

ruby - vi readline 支持 jruby 的 irb

javascript - 如何将 SCSS 编译为 CSS 并将 CSS 代码作为字符串加载到变量中?

css - 使用 Sass 从类中获取数字