4

来自 gruntfile.js 的片段

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

这应该根据rubular工作。

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

有任何想法吗?

4

1 回答 1

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的信息,它与正则表达式不同

于 2013-10-10T04:05:06.147 回答