執行任務
配置中的任務
grunt.initConfig
的所有屬性都是有效的任務,所以如果你的 Gruntfile 看起來像這樣:
module.exports = function(grunt) {
grunt.initConfig({
jshint: {
files: ['Gruntfile.js'],
}
});
grunt.loadNpmTasks('grunt-contrib-jshint');
grunt.registerTask('default', ['jshint']);
};
shell 命令 $ grunt jshint
將執行 jshint
任務。
有目標的任務
任務可以有不同的目標。以這段程式碼為例:
grunt.initConfig({
jshint: {
gruntfile: {
files: ['Gruntfile.js']
},
project: {
files: 'src/**/*.js'
}
}
});
在這裡,jshint 可以定位專案的 gruntfile 或所有 JavaScript 檔案。如果我們執行 $ grunt jshint
將使用兩個目標,但是如果我們執行 $ grunt jshint:gruntfile
,則 linter 將僅應用於 gruntfile。
註冊任務
像 grunt.registerTask('default', ['jshint']);
這樣註冊的預設任務將使用 shell 命令 $ grunt
執行。
新註冊的任務將作為命令列引數傳遞給 grunt。例如:
grunt.registerTask('gruntfile', ['jshint:gruntfile']);
將與 $ grunt gruntfile
爭吵。