我正在編寫一個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?