Grunt扩展文件,src中可以接受哪些模式?

时间:2013-10-10 04:02:16

标签: javascript node.js sass gruntjs yeoman

gruntfile.js的片段

sass: {
    compile: {
        files: [{
            expand: true,
            cwd: 'css/',
            src: ['^[^_].scss'],
            dest: '../css/',
            ext: '.css'
        }]
    }
},

这应该有效according to rubular.

基本上我想编译'css'目录中的所有.scss文件,除非它们以下划线开头。但是,这种模式与什么都不匹配?

有什么想法吗?

1 个答案:

答案 0 :(得分:11)

尝试这种模式:['*.scss', '!_*.scss']。它也会使区别更明确。

sass: {
    compile: {
        files: [{
            expand: true,
            cwd: 'css/',
            src: ['*.scss', '!_*.scss'],
            dest: '../css/',
            ext: '.css'
        }]
    }
},

如果您想以递归方式匹配(cwd的子文件夹中的文件),请使用**/*

sass: {
    compile: {
        files: [{
            expand: true,
            cwd: 'css/',
            src: ['**/*.scss', '!**/_*.scss'],
            dest: '../css/',
            ext: '.css'
        }]
    }
},

详细了解Grunt Globbing Patterns与正则表达式不同。