Grunt通配符使用问题

时间:2013-12-04 13:26:24

标签: gruntjs

我正在使用grunt插件https://npmjs.org/package/grunt-legacssy来展平/删除IE7& 8的媒体查询。

如果我创建1对1的关系,这是有效的:

'shared/_assets/css/_modules/foo-legacy.css': 'shared/_assets/css/_modules/foo.css'

如果我想要1对多的话,它也有效:

'shared/_assets/css/_modules/_all.css': ['shared/_assets/css/_modules/*.css']

但我真正需要的(因为我不会进入的原因)是grunt遍历文件夹中的所有css文件并将'-legacy'附加到文件中。我想要将所有文件连接到一个文件。

所以输入是:

foo.css
bar.css
(etc)

所需的文件输出为:

foo.css
foo-legacy.css
bar.css
bar-legacy.css
etc

(有很多文件,所以我不想一次手动1行)。

我无法弄清楚通配符如何在代码的目标部分中起作用。

干杯,

1 个答案:

答案 0 :(得分:0)

绝对。您可以使用ext(扩展名)选项为任何文件添加后缀,但它需要更长的语法:

legacssy: {
    build: {
        expand: true,
        src: ['shared/_assets/css/_modules/*.css'],
        dest: 'shared/_assets/css/_modules/',
        ext: '-legacy.css',
        flatten: true
    }
}