在LESS CSS中,我可以让LESS监视一堆文件,但在它们改变时编译不同的文件吗?

7

我有几个LESS文件,都被导入到一个主文件(styles.less)中。目前我的问题是:当我在其中一个子文件中进行更改时,我必须保存style.less以将其编译为CSS。

有没有一种方法可以要求less监视子文件,但只编译父文件呢?

谢谢, Ad


你在使用Ruby的哪个版本?还有Rails和更多的插件吗? - hellvinz
使用 Ruby 版本,但不在 Ruby 网站上...如果这有意义的话。 - Ad Taylor
5个回答

7
我解决了我的问题,但对于大多数人来说也是很好的解决方案。
由于我使用的是Mac,我安装了less.app ( http://incident57.com/less/ ),它使用less.js为您编译less。几天前,他们添加了一个新功能:
“反向@import解析”新功能。如果您有一个文件X导入另一个文件Y,并且您更改了Y,则保存Y时X现在将自动重新编译(如果打开了自动编译)。此功能是自动的;没有什么需要打开或连接的。当发生这种情况时,您将在编译器结果中看到“触发者:X”。
结果证明它确实非常有效。希望这能帮助到某些人!

似乎 more 插件也可以处理这个问题 http://github.com/cloudhead/more/blob/master/lib/less/more.rb#L105 - hellvinz
1
这个不像预期的那样工作,我想用@import编译文件,但它没有。 - ThomasReggi

4
我已经修改了名为lesswatch的Bash脚本(它不支持“反向@import解析”),它使用watchdog监听文件更改事件,并使用lessc编译为CSS。我今天写了一篇简短博客文章

2

有一个 less.js 的分支可以监控文件更改,甚至包括通过 @import 导入的所有文件(就像上面接受的答案一样):

https://github.com/wvl/less.js

less.js 的作者不想要旧版 ruby 版本的 --watch 选项,所以这个分支可能是目前最好的选择。通过 node.js 它可以在所有平台上运行。


1

0

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接