多个eslintrc在grunt指向不同的文件夹

时间:2018-04-06 06:41:24

标签: javascript ecmascript-6 gruntjs eslint eslintrc

我有像下面这样的文件夹结构并使用eslint我正在验证我的语法规则。

我有一个grunt文件,默认情况下将eslint运行到 src 下面的所有文件夹。但是现在我有了新的方案,我需要在一个特定的文件夹 mddx 上运行更多的规则。随着默认规则,mddx应该运行更多规则。

我知道我们可以有多个.eslintrc.json文件,但是如何在gruntfile.js中配置两个任务,两个都在做eslint但是规则是不同的。 指向文件夹也不同。

parent
 |
 |
 |------src
 |        +mund
 |            |
 |            |--<jsfiles>
 |        +mddx
 |            |
 |            |--<jsfiles>
 .eslintrc.json
 |
 |
 gruntfile.js
 |

gruntfile.js

module.exports = function(grunt) {

    require('load-grunt-tasks')(grunt);

    grunt.initConfig({
        eslint: {
            options: {
                config: '.eslintrc.json',
                reset: false
            },
            target: {
              src: [
                'src/**/*.js'
              ]
            }
        }
    });


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

};

1 个答案:

答案 0 :(得分:0)

我得到了答案,所以张贴它。 创建特定于文件夹的.eslintrc.json文件,并将分割的eslint分成两个子任务。两者都有不同的配置,并指向不同的规则和 夹。

module.exports = function(grunt) {
    require('load-grunt-tasks')(grunt);
    grunt.initConfig({
        eslint: {
            default: {
                options: {
                    configFile: '.eslintrc.json',
                    reset: false
                },
                src: [
                    'src/**/*.js'
                ]
            },
            mddx: {
                options: {
                    configFile: 'src/mddx/.eslintrc.json',
                    reset: false
                },
                src: [
                    'src/mddx/**/*.js'
                ]
            }
        }
    });

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