2016-08-24 109 views
0

我有以下咕噜任务如何:咕噜任务模块化

grunt.registerTask('pack', ['clean', 'makeMdirs', 'prepare:test']); 
grunt.registerTask('pack-ci', ['clean', 'makeMdirs', 'prepare:ci']); 

注意他们是如何在他们的观点只不同的准备工作?我该如何制作这个模块,这样我就可以拥有一个传递参数来准备函数的任务。

回答

0

使用自定义任务,可以评估通过命令行传递给任务的参数,并调整任务的执行。此功能允许您使用带有可选--ci标志的grunt pack以在不同准备目标之间切换:

function oneTaskToRuleThemAll() { 
     var prepareTarget = ['prepare', (grunt.option('ci') ? 'ci': 'test')].join(':'); 
     grunt.task.run(['clean', 'makeMdirs', prepareTarget]); 
    } 

    grunt.registerTask('pack', oneTaskToRuleThemAll);