【问题标题】:"compass watch" compiles one file and not another“指南针手表”编译一个文件而不是另一个
【发布时间】:2015-03-27 23:49:47
【问题描述】:

我有一组 SASS 文件,我使用 Compass 作为我的预处理器。我在 MacOSX 终端中运行 compass watch

我的文件是结构化的,因此我的所有代码都会被编译两次……一次在mq.css 中使用媒体查询,一次在no-mq.css 中没有。非媒体查询代码适用于 IE8 和无法识别媒体查询的浏览器。

当我对我的任何文件进行更改时,我的 mq.css 会被编译,但很少会编译 no-mq.css。如果我compass clean 然后手动compass compile 他们都会。如果我只运行 compass compile 而没有先清理,则只有 mq.css 编译。我可以整天运行watch,我的mq.css 将继续编译。

我已经升级、降级,并且通常使用 SASS 和 Compass 的组合。我没有使用 Susy 或其他与 SASS 相关的库。我确实打开了 SASS 地图。

我的 SCSS 入门包可以在这里查看:https://github.com/jhogue/scss-scaffold,以防我在config.rb/sass/framework/_config.scss 中遗漏了一些东西。

我的宝石如下:

  • 指南针 (1.0.3)
  • 指南针核心 (1.0.3)
  • 指南针导入一次(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)

它并不像烦人那么重要,我想知道是否有其他人遇到过这个或类似的问题。

【问题讨论】:

  • 我昨天升级到 Windows 10 并重新安装了一个干净的 ruby​​,到目前为止只添加了指南针,我遇到了完全相同的问题。所以它非常干净。之前和现在一切正常,只有我在这个项目中的 10 个 css 文件中的第一个(否则相同 css 的不同颜色主题)被编译。如果我使用清理并编译它可以工作,没有清理它不会。你有没有想过会发生什么?

标签: css ruby sass gem compass


【解决方案1】:

我过去曾多次遇到过同样的问题,并且发现当我在子目录中有部分内容时经常会发生这种情况。在每个子目录的 config.rb 文件中调用 add_import_path 通常可以修复它:

// config.rb
add_import_path "sass/framework"

当然,在观看/编译之前compass clean 也是如此。

【讨论】:

  • 谢谢。我正在一些项目上尝试它,但它似乎没有帮助。我想知道我的路径是否错误。我假设它应该是相对于配置文件的位置,对吗?
  • 是的,它与config.rb 文件相关。我唯一能想到的就是确保您将其作为函数调用,而不是将其分配给变量(没有= 符号)
  • 仍然没有解决此问题的解决方案。我最近开始让watch 坐在那里默默地失败,即使我正在保存更改,所以我想我需要扔掉一堆我的宝石并重新开始新的安装。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-10-24
  • 2012-08-02
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-12-20
相关资源
最近更新 更多