我正在编写一个grunt插件,这将有助于我经常使用的构建过程。我通常最终做的是将我的GruntFile从项目复制/粘贴到项目中,但我认为将它放入插件可能会更有用。我用于此构建过程的任务通常是繁重的任务,例如jshint
,copy
,cssmin
,less
和uglify
等等。我想如果我能创建一个只需要一些配置并运行所有这些任务的插件,我就可以清理掉我的文件Gruntfile.js
。如何在grunt插件中运行其他注册的grunt任务?
我目前的设置通常是这样的:
grunt.initConfig({
jshint: {/* ... */},
copy: {/* ... */},
less: {/* ... */},
cssmin: {/* ... */},
uglify: {/* ... */}
});
// Load and Register tasks...
,但我想,以减少initConfig到这样的事情:
grunt.initConfig({
build: {
dev: {
paths: {
public: 'public',
source: 'source',
bower: 'bower_components'
},
options: {
pretty: true,
minify: false
}
}
}
});
这是不是可以从内完成咕噜插件?
编辑: 我发现了类似于我正在寻找的东西,但它似乎并没有那么优雅,特别是所有需要手动设置的配置,但也许值得。
How can I run a grunt task from within a grunt task?