Grunt - grunt-eslint不会启动任务

时间:2018-01-12 10:21:05

标签: javascript json gruntjs grunt-eslint

我在我的gruntfile.js中设置了grunt-eslint,但是当我运行“grunt eslint”时,没有任何事情发生。这项任务看起来似乎会开始,但即使在15分钟后也会停滞不前。

我的所有其他任务都运行得很好,除了eslint之外没有任何错误或其他任何内容。

gruntfile.js

module.exports = function(grunt) {
  grunt.initConfig({
   eslint: {
    options: {
      configFile: '.eslintrc.json'
    },
    target: ['src/js/*.js']
   },
  })

  grunt.loadNpmTasks('grunt-eslint');

  grunt.registerTask('eslint', [
    'eslint',
  ]);
}

.eslintrc.json

{
  "env": {
    "browser": true
  },
  "extends": "eslint:recommended",
  "rules": {
    "indent": [
        "error",
        "tab"
    ],
    "linebreak-style": [
        "error",
        "windows"
    ],
    "quotes": [
        "error",
        "double"
    ],
    "semi": [
        "error",
        "always"
    ]
  }
}

gruntfile和.eslintrc.json都在root

有谁知道它会导致什么?我的设置错了吗?

2 个答案:

答案 0 :(得分:2)

我遇到了同样的问题。

如果在运行时添加--verbose选项:

grunt eslint --verbose

您会看到您的任务正在重复运行-因为您将任务命名为eslint(与已注册的eslint任务同名),咕unt声陷入无限循环。

更改

 grunt.registerTask('eslint', [
    'eslint',
  ]);

收件人:

 grunt.registerTask('myeslinttask', [
    'eslint',
  ]);

并运行:

grunt myeslinttask

答案 1 :(得分:0)

问题:

grunt.registerTask('eslint',[ 'eslint', ]);

是它会永远自称为它,只需删除此registerTask命令 并运行grunt eslint,这将足以