你好,我有以下gulp任务,该任务在伸长过程中发生了任何错误,我希望它会因文本而失败,而不仅仅是掉落在堆中,我我不确定如何实施。任何帮助将不胜感激。
gulp.task('lint-solution', function(done){
log('Linting solution')
return gulp.src(['../CRMPortal/**/*.js','../Common/**/*.js','!../Common/scripts/**/*','!../node_modules/**','!../CRMPortal/dist/**','!../CRMPortal/gulpfile.js'])
.pipe($.eslint({configFile: ".eslintrc.json"}))
.pipe($.eslint.format(
reporter, function(results){
fs.writeFileSync(path.join(__dirname,'report.html'), results);
}
))
.pipe($.eslint.failAfterError()); <-- I want text I provide to be printed on error here should that be the case , not just the error
})
目前(显然)我得到的是:
Message:
Failed with 1 error
您无法更改此行:
Message:
每当遇到错误时,该行是由Gulp本身打印的。除非您抑制错误本身,否则您将无法抑制它,在这种情况下,如果遇到错误,您的任务就不会失败。
但是,您可以更改此行:
Failed with 1 error
此行存储在gulp-eslint
发出的错误对象上。您可以通过在流中注册.on('error')
处理程序来访问错误对象,然后修改消息,如果gulp-eslint
发出错误:
.pipe($.eslint.failAfterError())
.on('error', function(err) {
if (err.plugin === 'gulp-eslint') {
err.message = 'Oops';
}
});
这将输出以下内容:
Message:
Oops