你如何配置和使用 gulp eslint 任务?

Posted

技术标签:

【中文标题】你如何配置和使用 gulp eslint 任务?【英文标题】:How do you configure and use the gulp eslint task? 【发布时间】:2019-01-30 00:32:08 【问题描述】:

我正在尝试让 gulp-eslint 工作。这是我的 package.json:

"devDependencies": 
    "eslint": "^5.4.0",
    "eslint-plugin-babel": "^5.1.0",
    "gulp": "^3.9.1",
    "gulp-eslint": "^5.0.0",

在 gulp-eslint Github 页面上没有提到依赖项,但是当我第一次运行 gulp lint 任务时,系统提示我安装 eslint-plugin-babel,所以我认为它是必需的。

这是我的任务:

var gulp = require('gulp');
var eslint = require('gulp-eslint');

gulp.task('lint', function () 
    gulp.src('js/scripts.js)
        .pipe(eslint())
        .pipe(eslint.format())
        .pipe(eslint.failAfterError());
);

这是我的.eslintrc.json


    "parserOptions": 
        "ecmaVersion": 6
    ,
    "env": 
        "es6": true
    ,
    "rules": 

当我运行gulp lint 时,我得到了这个错误:

Error: ESLint configuration in .eslintrc is invalid:
- Unexpected top-level property "parseOptions"

eslint 文档使用parserOptions,所以我不确定parseOptions 的来源。我错过了什么?

【问题讨论】:

【参考方案1】:

我在安装了一大堆 eslint 依赖项后让它工作了。

"devDependencies": 
    "eslint": "^5.4.0",
    "eslint-config-standard": "^11.0.0",
    "eslint-plugin-babel": "^5.1.0",
    "eslint-plugin-import": "^2.14.0",
    "eslint-plugin-node": "^7.0.1",
    "eslint-plugin-promise": "^4.0.0",
    "eslint-plugin-standard": "^3.1.0",
    "babel-eslint": "^8.2.6",
    "gulp": "^3.9.1",
    "gulp-eslint": "^5.0.0"

你需要这么多包才能让 eslint 工作似乎很奇怪,但这对我有用。

【讨论】:

以上是关于你如何配置和使用 gulp eslint 任务?的主要内容,如果未能解决你的问题,请参考以下文章

如何使用webpack打包你的项目

教你如何使用webpack打包你的项目

Gulp 任务不包含子文件夹

gulp-eslint 无法解析可选链接语法

使用Gulp任务和WebStorm调试Protractor测试

使用 gulp-eslint 的问题