在使用gulp时。 有什么办法来抑制某些任务的“已启动”和“已完成”日志条目
在使用gulp时。 有什么办法来压制某些任务的“已启动”和“已完成”日志条目? 我想使用依赖关系树,但是我不想在日志树中logging几个任务,因为它们是具有自己的日志function的中间步骤。
[UPDATE]
截至2014年7月,一个 – --silent
选项已被添加到gulp( https://github.com/gulpjs/gulp/commit/3a62b2b3dbefdf91c06e523245ea3c8f8342fa2c#diff-6515adedce347f8386e21d15eb775605 )。
这在下面的@slamborne答案中得到了certificate,如果它符合你的用例,你应该倾向于使用它而不是下面的解决scheme。
[/ UPDATE]
这是一种做法(在你的gulp文件中):
var cl = console.log; console.log = function () { var args = Array.prototype.slice.call(arguments); if (args.length) { if (/^\[.*gulp.*\]$/.test(args[0])){ return; } } return cl.apply(console, args); };
…并且会忽略使用gutil.log发送的每条消息。
这里的技巧显然是检查发送到console.log的消息,看起来像“[ gulp.util.log
]”( 见gulp.util.log
源代码 )的第一个参数,并最终完全忽略它。
现在,这真的很肮脏 – 如果没有家长监督,你真的不应该这样做,而且你已经被警告:-)
您可以使用带有gulp CLI的--silent
标志来禁用所有的gulp日志logging。
有点迟了,但我认为这将是更好的使用noop从gulp-util否?
var gutil = require('gulp-util'); // ... gutil.log = gutil.noop; // or gutil.log = function() { return this; };
如这里所述