使用GruntJS構(gòu)建Web程序之合并壓縮篇
有如下步驟:
1.新建項(xiàng)目Bejs
2.新建文件package.json
3.新建文件Gruntfile.js
4.命令行執(zhí)行g(shù)runt任務(wù)
一、新建項(xiàng)目Bejs
源碼放在src下,該目錄有兩個(gè)子目錄asset和js。js下放selector.js和ajax.js,這在上一篇已經(jīng)講了如何合并壓縮它們。這篇只關(guān)注asset目錄,asset目錄下放了一些圖片和css文件。一會(huì)會(huì)把兩個(gè)css資源reset.css和style.css合并,壓縮到dest/asset目錄。一個(gè)合并版本all.css,一個(gè)壓縮版本all-min.css。
二、新建package.json
package.json放在根目錄下,它的意義上一篇已經(jīng)介紹過(guò)了。 現(xiàn)在的項(xiàng)目結(jié)構(gòu)如下
package.json內(nèi)容需符合JSON語(yǔ)法規(guī)范,如下
{
"name": "BeJS",
"version": "0.1.0",
"devDependencies": {
"grunt": "~0.4.0",
"grunt-contrib-concat": "~0.1.1",
"grunt-css": ">0.0.0"
}
}
grunt-contrib-concat上一篇已經(jīng)介紹過(guò)了,grunt-css 是這篇要使用的插件。
此時(shí),打開(kāi)命令行工具進(jìn)入到項(xiàng)目根目錄,敲如下命令: npm install
查看根目錄,發(fā)現(xiàn)多了個(gè)node_modules目錄,包含了四個(gè)子目錄,見(jiàn)圖
三、新建文件Gruntfile.js
Gruntfile.js也是放在項(xiàng)目根目錄下,幾乎所有的任務(wù)都定義在該文件中,它就是一個(gè)普通的js文件,里面可以寫任意js代碼而不僅局限于JSON。和package.json一樣它也要和源碼一樣被提交到svn或git。
源碼如下
module.exports = function(grunt) {
// 配置
grunt.initConfig({
pkg : grunt.file.readJSON('package.json'),
concat : {
css : {
src: ['src/asset/*.css'],
dest: 'dest/asset/all.css'
}
},
cssmin: {
css: {
src: 'dest/asset/all.css',
dest: 'dest/asset/all-min.css'
}
}
});
// 載入concat和css插件,分別對(duì)于合并和壓縮
grunt.loadNpmTasks('grunt-contrib-concat');
grunt.loadNpmTasks('grunt-css');
// 默認(rèn)任務(wù)
grunt.registerTask('default', ['concat', 'cssmin']);
};
四、執(zhí)行g(shù)runt任務(wù)
打開(kāi)命令行,進(jìn)入到項(xiàng)目根目錄,敲 grunt
從打印信息看出成功的合并和壓縮并生成了dest目錄及期望的文件,這時(shí)的項(xiàng)目目錄下多了dest,如下
至此,css合并壓縮完畢。
- Node.js的項(xiàng)目構(gòu)建工具Grunt的安裝與配置教程
- 使用基于Node.js的構(gòu)建工具Grunt來(lái)發(fā)布ASP.NET MVC項(xiàng)目
- 學(xué)習(xí)使用grunt來(lái)打包JavaScript和CSS程序的教程
- 配置Grunt的Task時(shí)通配符支持和動(dòng)態(tài)生成文件名問(wèn)題
- Grunt入門教程(自動(dòng)任務(wù)運(yùn)行器)
- 詳解Grunt插件之LiveReload實(shí)現(xiàn)頁(yè)面自動(dòng)刷新(兩種方案)
- 使用GruntJS構(gòu)建Web程序之Tasks(任務(wù))篇
- 使用GruntJS構(gòu)建Web程序之構(gòu)建篇
- 使用GruntJS構(gòu)建Web程序之安裝篇
- 使用GruntJS鏈接與壓縮多個(gè)JavaScript文件過(guò)程詳解
- 使用Grunt.js管理你項(xiàng)目的應(yīng)用說(shuō)明
- 基于Node.js的JavaScript項(xiàng)目構(gòu)建工具gulp的使用教程
相關(guān)文章
node.js中的fs.symlink方法使用說(shuō)明
這篇文章主要介紹了node.js中的fs.symlink方法使用說(shuō)明,本文介紹了fs.symlink的方法說(shuō)明、語(yǔ)法、接收參數(shù)、使用實(shí)例和實(shí)現(xiàn)源碼,需要的朋友可以參考下2014-12-12window系統(tǒng) nodejs安裝opencv環(huán)境配置圖文詳解
這篇文章主要介紹了window系統(tǒng) nodejs安裝opencv環(huán)境配置,結(jié)合圖文形式詳細(xì)分析了window環(huán)境下 nodejs安裝opencv的具體步驟、注意事項(xiàng)2023-04-04node.js中的fs.ftruncate方法使用說(shuō)明
這篇文章主要介紹了node.js中的fs.ftruncate方法使用說(shuō)明,本文介紹了fs.ftruncate的方法說(shuō)明、語(yǔ)法、接收參數(shù)、使用實(shí)例和實(shí)現(xiàn)源碼,需要的朋友可以參考下2014-12-12