無標題文章

這里為了節(jié)省時間,這里先創(chuàng)建一個angular 項目
cd /Users/yuyi/Documents/workSpace
ng new GruntDome

項目名稱 GruntTest
目錄js a.js main b.js package.json Gruntfile.js
devDependencies 開發(fā)依賴

Grunt介紹
Grunt是一個自動化的項目構(gòu)建工具。如果你需要重復的執(zhí)行像壓縮缘薛、 編譯、 單元測試泞边、代碼檢查以及打包發(fā)布的任務馍资。 那么你可以使用Grunt來處理這些任務穴店, 你所需要做的只是配置好Grunt膀捷, 這樣能很大程度的簡化你的工作迈嘹。

grunt安裝
Grunt和Grunt插件都是通過npm、Node.js包管理器安裝和管理的全庸。實際上秀仲,安裝的并不是Grunt,而是Grunt-cli壶笼,也就是命令行的Grunt神僵,這樣你就可以使用grunt命令來執(zhí)行項目中的Gruntfile.js中定義的task。但是要注意覆劈,Grunt-cli只是一個命令行工具保礼,用來執(zhí)行沛励,而不是Grunt這個工具本身。下面的代碼可以在全局范圍安裝Grunt-cli氓英,全局安裝侯勉,會有權(quán)限的問題鹦筹,所以Linux環(huán)境下 前面加sudo铝阐,Windows用管理員權(quán)限。
sudo npm install -g grunt-cli

屏幕快照 2017-09-10 上午12.16.18.png

安裝成功铐拐,版本號1.2.0

然后在具體的項目中徘键,安裝grunt。
cd /Users/yuyi/Desktop/GruntTest
npm install grunt --save-dev
--save-dev 的意思是遍蟋,在當前目錄安裝grunt的同時吹害,順便把grunt保存為這個目錄的開發(fā)依賴項⌒榍啵可以在package.json的“devDependencies”中就會存儲開發(fā)依賴項它呀。
而且多出了一個"node_modules"文件夾,里面的grunt文件夾就是存儲grunt源文件的地方棒厘。

現(xiàn)在纵穿,在終端里面運行g(shù)runt命令,會報錯 Fatal error: Unable to find Gruntfile.這個就是缺少Gruntfile.js文件奢人。

配置Gruntfile.js
首先來配置一個最簡單的:
module.exports = function(grunt) {
grunt.initConfig({
});
grunt.registerTask('default', []);
};
然后谓媒,運行g(shù)runt。這里顯示.done何乎,表示通過句惯。

安裝Grunt插件
下面是幾個最常用的插件
Contrib-jshint——javascript語法錯誤檢查;
Contrib-watch——實時監(jiān)控文件變化支救、調(diào)用相應的任務重新執(zhí)行抢野;
Contrib-clean——清空文件、文件夾各墨;
Contrib-uglify——壓縮javascript代碼
Contrib-copy——復制文件蒙保、文件夾
Contrib-concat——合并多個文件的代碼到一個文件中
karma——前端自動化測試工具

先看uglify插件,這個是壓手JS代碼的欲主〉瞬蓿看看幾乎每個類庫或者框架,都有一個***.min.js壓縮版扁瓢。
安裝插件的方式和安裝grunt一樣详恼。
npm install grunt-contrib-uglify --save-dev
然后再src目錄下新建test.js,然后隨便寫一點代碼引几。然后要把這個js文件進行壓縮昧互。
壓縮哪個文件挽铁,和往哪里壓縮都需要在Gruntfile.js里面配置。
uglify: {
options: {},
build: {
src: ['src/test.js'],
dest: 'src/app.min.js'
}
}
//加載配置
grunt.loadNpmTasks('grunt-contrib-uglify');
options參數(shù)具體可以參照官網(wǎng)敞掘,有帶有banner的叽掘?。build添加的任務玖雁,當然可以多個任務更扁,SPA就是這么做的。src:是目標文件赫冬,dest是導出的文件浓镜。

然后看看最常用的代碼檢查插件jshint
sudo npm install grunt-contrib-jshint
安裝成功然后,在Gruntfile.js配置一下劲厌,才能正常使用膛薛。配置如下
/jshint代碼檢查插件的配置信息/
jshint: {
build: ['Gruntfile.js', 'src/*.js'],
options: {
jshintrc: '.jshintrc'
}
}

//加載配置
grunt.loadNpmTasks('grunt-contrib-jshint');

http://www.reibang.com/p/4cb23f9e19d3

任務配置代碼、插件加載代碼补鼻、任務注冊代碼

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末哄啄,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子风范,更是在濱河造成了極大的恐慌咨跌,老刑警劉巖,帶你破解...
    沈念sama閱讀 221,635評論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件乌企,死亡現(xiàn)場離奇詭異虑润,居然都是意外死亡,警方通過查閱死者的電腦和手機加酵,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,543評論 3 399
  • 文/潘曉璐 我一進店門拳喻,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人猪腕,你說我怎么就攤上這事冗澈。” “怎么了陋葡?”我有些...
    開封第一講書人閱讀 168,083評論 0 360
  • 文/不壞的土叔 我叫張陵亚亲,是天一觀的道長。 經(jīng)常有香客問我腐缤,道長捌归,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 59,640評論 1 296
  • 正文 為了忘掉前任岭粤,我火速辦了婚禮惜索,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘剃浇。我一直安慰自己巾兆,他們只是感情好猎物,可當我...
    茶點故事閱讀 68,640評論 6 397
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著角塑,像睡著了一般蔫磨。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上圃伶,一...
    開封第一講書人閱讀 52,262評論 1 308
  • 那天堤如,我揣著相機與錄音,去河邊找鬼留攒。 笑死煤惩,一個胖子當著我的面吹牛嫉嘀,可吹牛的內(nèi)容都是我干的炼邀。 我是一名探鬼主播,決...
    沈念sama閱讀 40,833評論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼剪侮,長吁一口氣:“原來是場噩夢啊……” “哼拭宁!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起瓣俯,我...
    開封第一講書人閱讀 39,736評論 0 276
  • 序言:老撾萬榮一對情侶失蹤杰标,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后彩匕,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體腔剂,經(jīng)...
    沈念sama閱讀 46,280評論 1 319
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 38,369評論 3 340
  • 正文 我和宋清朗相戀三年驼仪,在試婚紗的時候發(fā)現(xiàn)自己被綠了掸犬。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 40,503評論 1 352
  • 序言:一個原本活蹦亂跳的男人離奇死亡绪爸,死狀恐怖湾碎,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情奠货,我是刑警寧澤介褥,帶...
    沈念sama閱讀 36,185評論 5 350
  • 正文 年R本政府宣布,位于F島的核電站递惋,受9級特大地震影響柔滔,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜萍虽,卻給世界環(huán)境...
    茶點故事閱讀 41,870評論 3 333
  • 文/蒙蒙 一睛廊、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧贩挣,春花似錦喉前、人聲如沸没酣。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,340評論 0 24
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽裕便。三九已至,卻和暖如春见咒,著一層夾襖步出監(jiān)牢的瞬間偿衰,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,460評論 1 272
  • 我被黑心中介騙來泰國打工改览, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留下翎,地道東北人。 一個月前我還...
    沈念sama閱讀 48,909評論 3 376
  • 正文 我出身青樓宝当,卻偏偏與公主長得像视事,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子庆揩,可洞房花燭夜當晚...
    茶點故事閱讀 45,512評論 2 359

推薦閱讀更多精彩內(nèi)容

  • 快速入門 Grunt和 Grunt 插件是通過 npm 安裝并管理的俐东,npm是 Node.js 的包管理器。Gru...
  • jHipster - 微服務搭建 CC_簡書[http://www.reibang.com/u/be0d56c4...
    quanjj閱讀 816評論 0 2
  • 對網(wǎng)站資源進行優(yōu)化订晌,并使用不同瀏覽器測試并不是網(wǎng)站設計過程中最有意思的部分虏辫,但是這個過程中的很多重復的任務能夠使用...
    懵逼js閱讀 1,073評論 0 8
  • 李志成口述,青年琴人計劃整理 李志成锈拨,青年笛簫演奏家砌庄、“中原笛派”傳人、笛樂大師孔建華先生嫡傳弟子奕枢、現(xiàn)任湖北師范大...
    琴人計劃閱讀 960評論 0 0
  • 從0到50 從小到大我都是一個不愛正經(jīng)讀書的人娄昆,閱讀量最大的時間是在初中高中偷看言情小說熱的時期。在最應該學習的時...
    不二白_閱讀 2,308評論 0 1