清理文件和文件夾:grunt-contrib-clean。
module.exports = function(grunt) {
grunt.initConfig({
clean : {
build : ['.tmp', 'build'],
release : ['release']
}
});
grunt.loadNpmTasks('grunt-contrib-clean');
grunt.registerTask('default', ['clean']);
};
使用UglifyJS壓縮js文件:grunt-contrib-uglify。
module.exports = function(grunt) {
// 項目配置
grunt.initConfig({
pkg : grunt.file.readJSON('package.json'),
uglify : {
options : {
banner : '/*! <%= pkg.file %> <%= grunt.template.today("yyyy-mm-dd") %> */\n'
},
build : {
src : 'src/<%=pkg.file %>.js',
dest : 'dest/<%= pkg.file %>.min.js'
}
}
});
// 加載提供"uglify"任務的插件
grunt.loadNpmTasks('grunt-contrib-uglify');
// 默認任務
grunt.registerTask('default', ['uglify']);
};
合併文件: grunt-contrib-concat。
module.exports = function(grunt) {
// 項目配置
grunt.initConfig({
pkg : grunt.file.readJSON('package.json'),
concat : {
options : {
separator : ';'
},
dist : {
src : ['src/zepto.js', 'src/underscore.js', 'src/backbone.js'],
dest : 'dest/libs.js'
}
}
});
grunt.loadNpmTasks('grunt-contrib-concat');
// 默認任務
grunt.registerTask('default', ['concat']);
}
合併並壓縮文件:
方式一、先合併再壓縮,首先將三個文件合併成一個文件libs.js,然後再將文件libs.js壓縮成libs.min.js
module.exports = function(grunt) {
// 項目配置
grunt.initConfig({
pkg : grunt.file.readJSON('package.json'),
concat : {
options : {
separator : ';'
},
dist : {
src : ['src/zepto.js', 'src/underscore.js', 'src/backbone.js'],
dest : 'dest/libs.js'
}
},
uglify : {
build : {
src : 'dest/libs.js',
dest : 'dest/libs.min.js'
}
}
});
grunt.loadNpmTasks('grunt-contrib-uglify');
grunt.loadNpmTasks('grunt-contrib-concat');
// 默認任務
grunt.registerTask('default', ['concat', 'uglify']);
}
方式二:先壓縮後合併,其實這裏只需要grunt-contrib-uglify一個插件就可以完成代碼的壓縮及合併。
module.exports = function(grunt) {
// 項目配置
grunt.initConfig({
pkg : grunt.file.readJSON('package.json'),
uglify : {
"target" : {
"files" : {
'dest/libs.min.js' : ['src/zepto.js', 'src/underscore.js', 'src/backbone.js']
}
}
}
});
grunt.loadNpmTasks('grunt-contrib-uglify');
// 默認任務
grunt.registerTask('default', ['uglify']);
}
grunt-contrib-copy:複製文件和文件夾。
grunt-contrib-cssmin:CSS文件壓縮。
grunt-contrib-imagemin:圖片壓縮。
grunt-usemin:Replaces references to non-optimized scripts or stylesheets into a set of HTML files (or any templates/views).
grunt-contrib-htmlmin:Minify HTML
原文鏈接:http://www.jianshu.com/p/2d5249914460