由於最近的食美特項目需要對css文件和js文件進行壓縮,各種比較之后,選擇了grunt進行構建。google一下,幾乎都是grunt0.3的使用說明,按照說明,幾乎無法使用。查看gruntjs的入門 Getting started,又是雲里霧里的,好吧,只能耐心看文檔和不斷的實踐吧。
一、使用環境說明:
1、在window xp 下使用
2、命令行使用的git的客戶端 msysgit 1.7.6(類似的nodejs應用,使用類linux的命令行比較好)
3、 只是入門說明,目的是快速的搭建環境,示例能夠跑起來。詳細的文檔資料請參考gruntjs,
一、nodejs安裝
進入 http://nodejs.org/ 直接點擊 INSTALL,直接安裝。(windows 下安裝nodejs 會直接安裝npm)
二、grunt 安裝
由於0.4.1版本的grunt分為3部分:grunt,grunt-cli 和 grunt-init。
1、安裝grunt-cli
如果 之前安裝過grunt,需要先卸載 npm uninstall -g grunt
安裝 grunt-cli : npm install -g grunt-cli
2、創建grunt項目
grunt項目一般需要以下內容:1 、grunt( 需要安裝)2、grunt 插件 (需要安裝) 3、package.json 和 Gruntfile.js 。 (官方入門Getting started 說通過 grunt-init 和 npm init 創建。對於入門來說,這兩中方式都不太好用。推薦直接創建 package.json 和Gruntfile.js 文件)
1、在 c 盤 創建文件夾:testGrunt
2、創建2個文件package.json 和 Gruntfile.js
package.json 內容如下
{
"name": "smeitejs",
"version": "0.1.0",
"description": "js for smeite.com",
"homepage": "http://smeite.com/",
"author": "zuosanshao <zuosanshao@qq.com>",
"devDependencies": {
"grunt": "~0.4.1",
"grunt-contrib-jshint": "~0.3.0",
"grunt-contrib-nodeunit": "~0.1.2",
"grunt-contrib-cssmin": "~0.5.0"
}
}
Gruntfile.js
module.exports = function(grunt) {
// Project configuration.
grunt.initConfig({
uglify: {
options: {
mangle: false
},
build: {
files: {
'assets/config.min.js': ['js/config.js'],
'assets/smeite.min.js': ['js/smeite.js'],
'assets/index.min.js': ['js/index.js']
}
}
},
cssmin: {
compress: {
files: {
'assets/all.min.css': ['css/base.css', 'css/global.css']
}
},
// smeite: {
// files: {
// 'assets/smeite.all.css': ['/play21/smeite.com/public/assets/css/**/*.css']
// }
// },
with_banner: {
options: {
banner: '/* My minified css file test test */'
},
files: {
'assets/min/base.css': ['css/base.css'],
'assets/min/global.css': ['css/global.css']
}
}
}
});
// Load the plugin that provides the "uglify" task.
grunt.loadNpmTasks('grunt-contrib-uglify');
grunt.loadNpmTasks('grunt-contrib-cssmin');
// Default task(s).
grunt.registerTask('default', ['uglify']);
};
由於在食美特項目只需要壓縮js和css文件。所有在Gruntfile.js 配置了2個grunt插件: grunt-contrib-uglify 和 grunt-contrib-cssmin
3 安裝 grunt 插件。在git 客戶端鍵入命令 cd /c/testGrunt ;
鍵入命令 npm install grunt-contrib-uglify 安裝uglify- 鍵入命令 npm install grunt-contrib-cssmin 安裝cssmin
4、 准備相關資料
在 /c/testGrunt 目錄下,創建 js目錄,並在js目錄下創建文件config.js smeite.js index.js ,創建css目錄,並在css目錄下創建base.css 和 global.css。 (這些文件都在Gruntfile.js 有配置,所以需要創建,內容可以隨意的寫)
5、執行grunt 命令
執行js壓縮命令 grunt uglify 效果如下

執行css壓縮命令 grunt cssmin 效果如下

整個文件截圖

后記:1、uglify 插件的使用說明 https://npmjs.org/package/grunt-contrib-uglify
2、cssmin插件使用說明 https://npmjs.org/package/grunt-contrib-cssmin
3、插件的配置需要在gruntfile.js中配置
