我有gruntfile如下:
concat: {
options: {
banner: '<%= banner %>',
stripBanners: true
},
one: {
src: ['src/**/*.js'],
dest: 'dist/<%= pkg.name %>_ac.js'
},
two: {
src: ['/types/**/*.js'],
dest: 'dist/<%= pkg.name %>_lib.js'
},
all: {
}
},..... and so on
现在如果我注册任务如下: grunt.registerTask('basic',['concat:all']);
我希望一个和两个都跑。我该如何在
中添加此选项 all: {
// what i need to add here to include one and two both?
}
答案 0 :(得分:5)
如果您要将任务注册为指向两个目标,则无需添加其他目标。只是做:
grunt.registerTask('basic', ['concat:one', 'concat:two']);
否则,如果您打算将一个和两个文件连接在一起,请执行以下操作:
grunt.initConfig({
concat: {
one: {
src: ['src/**/*.js'],
dest: 'dist/<%= pkg.name %>_ac.js'
},
two: {
src: ['/types/**/*.js'],
dest: 'dist/<%= pkg.name %>_lib.js'
},
all: {
src: ['<%= concat.one.src %>', '<%= concat.two.src %>'],
dest: 'dist/<%= pkg.name %>_all.js'
}
}
});
答案 1 :(得分:2)
Grunt允许您定义主要目标。所以在你的默认目标中定义为
grunt.registerTask( 'basic',['concat']);
这将激活concat:one和concat:two。
如果需要激活特定目标,请按如下方式定义注册任务。
grunt.registerTask( 'basic',['concat:one']);
如果您需要运行具有多个目标的特定任务,则可以定义如下。
all: {
tasks: ['one','two']
}
然后在你的registerTask中调用所有目标。
grunt.registerTask( 'basic',['concat:all']);
希望这可能有所帮助。
答案 2 :(得分:1)
你可以使用'gruntfile'插件,为你提供更强大的功能,你可以使用concat将一个grunt文件的任务添加到另一个。