链接Grunt任务

时间:2013-09-10 07:23:06

标签: gruntjs

是否可以链接Grunt任务,以便将一个任务的输出送入另一个任务而不先写入磁盘?例如,我可以将Stylus文件编译成CSS,用Autoprefixer作为前缀,然后使用grunt-contrib-cssmin压缩它们而不将中间文件写入磁盘吗?我问,因为在源代码和构建目录之间存储和引用文件很麻烦。

1 个答案:

答案 0 :(得分:3)

我不相信有,但我有另一种方式。将路径存储在initConfig中的配置对象中。通过使用grunt内置的下划线模板,您可以将文件路径定义一次(因此更易于管理)。

module.exports = function(grunt){

    grunt.initConfig({

        pathTo: {
            css: 'dist/css/master.css'
        },
        cssmin: {
            dist: {
                files: {
                    '<%= pathTo.css %>': ['<%= pathTo.css %>']
                }
            }
        },
        clean: {
            dist: ['dist']
        }
    });
}

我还建议在构建之前使用grunt-contrib-clean清除dist文件夹。这样,最终在那里的所有文件都是由Grunt生成的,所以如果你改变主意关于那里的文件路径或项目,你不必手动清理它。希望这可以帮助。 : - )