我有一个包含大量grunt任务的项目,这些任务基本上构建了一个功能齐全的资产管道(转换,源图,缩小,md5文件名视觉)。这些任务大部分都是我在github上找到的开源任务,但也有一些我只是简单地在内容中找到了#34;与grunt.registerTask
。
现在我想创建另一个也使用这个任务的项目,但是我找不到如何为使用其他任务的Grunt创建npmTask的正确方法,因为它填充像Grunt从未为此设计。如何创建这样的东西?也许github上有一些项目做过这样的事情,我可以看看他们的设计吗?
答案 0 :(得分:1)
您需要创建并加载自己的grunt任务 - 实际上非常简单。
创建任务 - 官方文档有一个示例,可以调用另外两个任务:http://gruntjs.com/creating-tasks#custom-tasks。将以下内容放在Gruntfile
:
grunt.registerTask('hello', function() {
grunt.log.write('hello');
grunt.task.run(['task1', 'task2'])
});
然后用一些包装代码将该任务移到自己的文件和文件夹(如tasks/hello.js
)中
'use strict';
module.exports = function(grunt) {
grunt.registerTask('hello', function() {
grunt.log.write('hello');
grunt.config.set('task1.opt1', 1234);
grunt.task.run(['task1', 'task2'])
});
};
然后在Gruntfile.js
grunt.loadTasks('tasks');