首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >ESlint皮棉gulpfile.js

ESlint皮棉gulpfile.js
EN

Stack Overflow用户
提问于 2016-06-03 16:10:55
回答 2查看 1.4K关注 0票数 2

嗨,我使用名为lint-eslint的Atom和plugin来分析我的javascript代码,它确实工作得很好,但是我的gulpfile.js上有一个非常恼人的linting错误。

下面是触发链接错误的代码,我使用airbnb .eslintrc配置文件作为ESlinter。

代码语言:javascript
复制
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返回的早期流有关,是否有其他方法返回它,或者如何纠正我知道可以忽略该文件的错误,但我想知道是否还有其他方法返回gulp.src()

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2016-06-03 16:22:02

ES6箭头函数可以返回一个没有单词“返回”的对象,如:

代码语言:javascript
复制
let func = () => ({key: 'value'});
let a = func();   // and a will be an object {key: 'value'}

这是ES6标准。

埃林特-airbnb风格指南认为,如果您的箭头功能只返回一个对象,‘返回’将是不必要的。所以你的代码可以这样写:

代码语言:javascript
复制
gulp.task('lint', () => (
 gulp.src(['**/*.js', '!node_modules/**', '!src/**'])
  .pipe(gulpif(args.verbose, gprint()))
  .pipe(eslint())
  .pipe(eslint.format())
  .pipe(eslint.failAfterError())
));

请参阅更多信息:关于返回对象文本的函数

票数 1
EN

Stack Overflow用户

发布于 2016-06-03 16:18:14

因为您的函数只是返回一个值,所以可以省略大括号{}return语句,这使得代码更轻松、更容易阅读。

所涉及的规则是箭身式,它“强制在箭头函数中一致使用大括号”。

代码语言:javascript
复制
gulp.task('lint', () => 
  gulp.src(['**/*.js', '!node_modules/**', '!src/**'])
   .pipe(gulpif(args.verbose, gprint()))
   .pipe(eslint())
   .pipe(eslint.format())
   .pipe(eslint.failAfterError())
);
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/37619039

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档