Gruntjs 如何为开发和发布构建Grunt任务

Gruntjs 如何为开发和发布构建Grunt任务,gruntjs,grunt-contrib-cssmin,Gruntjs,Grunt Contrib Cssmin,我似乎真的不知道如何为某项任务构造配置。目前,我正在尝试为cssmin执行此操作 此配置代码段工作正常: cssmin: { options: { shorthandCompacting: false, roundingPrecision: -1 }, target: { files: { 'wwwroot/all.css': ['bower_components/animate/animate.cs

我似乎真的不知道如何为某项任务构造配置。目前,我正在尝试为
cssmin
执行此操作

此配置代码段工作正常:

cssmin: {
    options: {
        shorthandCompacting: false,
        roundingPrecision: -1
    },
    target: {
        files: {
            'wwwroot/all.css': ['bower_components/animate/animate.css']
        }
    }
},
我是这样运行的:

grunt.registerTask('Test', ['cssmin']);
但我想为此创建一个开发和发布配置。所以我尝试了以下配置样式,它们都说
Done,没有错误。
,但是没有一个配置创建了文件

cssmin: {
    options: {
        shorthandCompacting: false,
        roundingPrecision: -1
    },
    dev: {
        target: {
            files: {
                'wwwroot/all.css': ['bower_components/animate/animate.css']
            }
        }
    }
}
grunt.registerTask('Test', ['cssmin:dev']);
就像这样:

cssmin: {
    dev: {
        options: {
            shorthandCompacting: false,
            roundingPrecision: -1
        },
        target: {
            files: {
                'wwwroot/all.css': ['bower_components/animate/animate.css']
            }
        }
    }
}
grunt.registerTask('Test', ['cssmin:dev']);
但这些配置似乎不起作用。它们保存
完成,没有错误。
,但它不像第一个配置示例那样创建CSS文件


那么,这不是创建不同的
dev
/
release
配置类型的方法吗?我做错了什么?

当您调用cssmin:dev时,dev是您的目标。无需再次在其中指定
目标
适当性。试试这个:

cssmin: {
    dev: {
        options: {
            shorthandCompacting: false,
            roundingPrecision: -1
        },
        files: {
            'wwwroot/all.css': ['bower_components/animate/animate.css']
        }
    },
    build : {
        options: {
            shorthandCompacting: true,
            roundingPrecision: -1
        },
        files: {
            'wwwroot/all.min.css': ['bower_components/animate/animate.css']
        }
    }
}
grunt.registerTask('Test', ['cssmin:dev']);