我正在定义一个包含多个任务和目标的Grunt项目,任务build
,我想运行一些复制目标,然后使用任务deployment
,我还想运行{{}然而,对于其他一些目标(例如,只将文件夹复制到特定目录以进行部署),我不希望在copy
任务中执行此目标。
那么如何从build
这是我的例子
build
答案 0 :(得分:1)
grunt.registerTask('build', ['clean', 'copy:foo', 'copy:bar']);
grunt.registerTask('deployment', ['copy:deployment']);
答案 1 :(得分:0)
我建议您为构建任务指定复制目标,例如copy:build for generic target或like copy:foo,copy:bar ..我不认为可以选择退出对于grunt中的一个不想要的目标(除非你通过函数调用创建一个通用任务)
编辑:
//something like this
grunt.registerTask('copy:build', function(){
var copyConfig = grunt.config.get('copy');
Object.keys(copyConfig).forEach(function(target){
if(target !== 'deployment'){
grunt.task.run('copy:'+target)
}
});
})
grunt.registerTask('build', ['clean', 'copy:build']);
//etc