我正在尝试compass watch
使用以下代码拦截输出:
var spawn = require('child_process').spawn;
var child = spawn('compass', ['watch'], { cwd: process.cwd() });
process.on('data', function (data) {
console.log('[log] ' + data);
});
我的问题是:我必须保存两次文件,以使覆盖消息在stdout中出现。这是一个示例输出...
后 node compass.js
[log] >>> Compass is watching for changes. Press Ctrl-C to Stop.
保存文件后
[log] >>> Change detected at 20:17:19 to: components/_avatar.scss
我第二次保存文件后
[log] overwrite assets/css/modules/projects.css
>>> Change detected at 20:17:26 to: components/_avatar.scss
似乎正在缓冲“覆盖资产/css/modules/projects.css”。有什么办法可以避免此缓冲区?
正如我刚刚发现的,指南针(或OSX)是真正的罪魁祸首。如果我运行compass watch
,输出将立即更新。但是,如果我运行compass watch > out.log
与节点相同的行为,则会发生。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句