[英]ESlint linting gulpfile.js
嗨,我使用Atom和名為lint-eslint的插件來整理我的javascript代碼,它的確工作正常,但我的gulpfile.js上確實有一個令人討厭的整理錯誤
這是觸發掉毛錯誤的代碼,我正在使用ESlinter的airbnb .eslintrc配置文件。
gulp.task('lint', () => {
return gulp.src(['**/*.js', '!node_modules/**', '!src/**'])
.pipe(gulpif(args.verbose, gprint()))
.pipe(eslint())
.pipe(eslint.format())
.pipe(eslint.failAfterError());
});
請注意,我正在嘗試使用箭頭語法。 我收到以下錯誤, 箭頭主體周圍出現意外的塊語句。 當我刪除return
它就消失了。
它與gulp src的早期返回流有關,是否還有其他方法可以將其返回,或者我如何糾正錯誤,我知道我可以忽略該文件,但我想知道是否還有另一種返回gulp.src()
由於函數僅返回一個值,因此可以省略花括號{}
和return
語句,這使代碼更輕便且更易於閱讀。
涉及的規則是arrow-body-style ,它“在花鍵功能中強制使用花括號” 。
gulp.task('lint', () =>
gulp.src(['**/*.js', '!node_modules/**', '!src/**'])
.pipe(gulpif(args.verbose, gprint()))
.pipe(eslint())
.pipe(eslint.format())
.pipe(eslint.failAfterError())
);
ES6箭頭功能可以返回不帶單詞“ return”的對象,如下所示:
let func = () => ({key: 'value'});
let a = func(); // and a will be an object {key: 'value'}
這是ES6標准。
eslint-airbnb樣式指南認為,如果箭頭功能除了返回對象外什么也不做,則不需要“返回”。 因此您的代碼可以像這樣:
gulp.task('lint', () => (
gulp.src(['**/*.js', '!node_modules/**', '!src/**'])
.pipe(gulpif(args.verbose, gprint()))
.pipe(eslint())
.pipe(eslint.format())
.pipe(eslint.failAfterError())
));
查看更多:有關返回對象文字的https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Functions/Arrow_functions 。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.