我想做一个Cakefile任务来观看一些CoffeeScript文件,就像运行coffee -c -w js/*.coffee
一样。
它可以成功监视并重新编译它们,但是当出现编译错误时,它不会将通常的输出记录到终端,就像我只是从终端运行脚本时那样。任何想法如何做到这一点?
exec = require('child_process').exec
task 'watch','watch all files and compile them as needed', (options) ->
exec 'coffee -c -w js/*.coffee', (err,stdout, stderr) ->
console.log stdout
另外,如果有比从运行“exec”更好的方法来从cakefile调用coffeescript命令,也请发布该命令。
最佳答案
用 spawn
代替exec
吗?
{spawn} = require 'child_process'
task 'watch', -> spawn 'coffee', ['-cw', 'js'], customFds: [0..2]