小编Ant*_*aja的帖子

Grunt.js - 如何有效地忽略(黑名单)node_modules文件夹?

我想知道为什么我的jshint grunt任务如此死慢.这是简短的示例配置:

var config = {
    jshint: {
        scripts: ['**/*.js', '!node_modules/**']
    },
    watch: {
        files: ['**/*.js', '!node_modules/**'],
        tasks: ['jshint']
    }
}
Run Code Online (Sandbox Code Playgroud)

这种模式是什么?如果我已正确理解了这些内容,则两个文件模式都使用grunt api来构建任务的文件列表.这种模式有效,它会过滤掉node_modules中的所有内容,但它会非常缓慢,因为在应用过滤器之前,grunt会递归地挖掘整个node_modules目录(~100 MB).

有没有办法真正告诉grunt甚至不看node_modules?

该示例配置在我的笔记本电脑上大约需要30秒.如果使用白名单模式而不是黑名单,则jshint任务只需几秒钟.但是白名单意味着我必须一直在寻找Gruntfile,如果我做任何重构等超级烦人的话.

当前列表模式如下所示:

var allJSFiles = [
    '*.js',
    '{browser,server,config,models,routes,tasks,schema,test,utils,views}/**/*.js',
     '!browser/bower_components/**'
];
Run Code Online (Sandbox Code Playgroud)

gruntjs

10
推荐指数
1
解决办法
2691
查看次数

标签 统计

gruntjs ×1