Grunt.js 上手

來源:互聯網
上載者:User

標籤:des   tar   c   http   get   com   

Official Site gruntjs.org/docs/getting-started.html

或者看http://tgideas.qq.com/webplat/info/news_version3/804/808/811/m579/201307/216460.shtml

 

 

grunt可以幫我們做什麼
grunt是一個自動化工具 自動壓縮js css 建立相關的檔案&檔案夾


首先grunt需要運行在NodeJS的環境下
安裝Grunt之前,可以在命令列中運行node -v查看你的Node.js版本
node環境(>0.8.0)

node環境包括npm包管理工具
npm是一個Node.js的包管理器,運行在命令列下,用於管理應用的依賴 (更通俗點 你可以通過它來安裝 刪除東西)

安裝grunt CLI 也就是grunt命令列工具
npm install -g grunt-cli
安裝結束後,會告知安裝的位置
/usr/local/lib/node_modules/grunt-cli、

這條命令將會把grunt命令植入到你的系統路徑中,這樣就允許你從任意目錄來運行它(定位到任意目錄運行grunt命令)。

如何使用?
在命令列中使用grunt xxx命令 即可執行預先設定好的工作(預先設定的工作儲存在Gruntfile.js中)
PS 此命令沒有安裝grunt 它只是安裝了全域可用的命令列工具


配置
Gruntfile.js本身會讀同目錄下的package.json
所以實際上配置有兩個檔案 json主要是項目資訊
而Gruntfile.js存放的是自動化的工作設定

package.json可以通過npm init自動產生(推薦)
記住name項的內容就行 其他隨意填
關於entry js 暫時不清楚
這是的json結果(去掉了不必要的東西)
{
"name": "protest1",
"version": "0.1.0",
"dependencies": {
"grunt-contrib-uglify": "^0.2.7",
"grunt": "^0.4.4"
}
}

當然可以直接抄官方文檔中的內容 只不過關於各個依賴的版本我們不清楚 所以依靠init命令產生最好

安裝grunt
npm install grunt --save-dev
完成後會更改package.json
查看一下 發現多出了這個
"devDependencies": {
"grunt": "^0.4.4"
}

關於Gruntfile.js
一個例子
module.exports = function(grunt){

// 項目配置
grunt.initConfig({
pkg: grunt.file.readJSON(‘package.json‘),
uglify: {
options: {
banner: ‘/*! <%= pkg.name %> <%= grunt.template.today("yyyy-mm-dd") %> */\n‘
},
build: {
src: ‘src/<%=pkg.name %>.js‘,
dest: ‘build/<%= pkg.name %>.min.js‘
}
}
});

// 載入提供"uglify"任務的外掛程式
grunt.loadNpmTasks(‘grunt-contrib-uglify‘);

// 預設任務
grunt.registerTask(‘default‘, [‘uglify‘]);
}

pkg這個變數中的key就是json檔案中的key 在uglify中 設定了需要被壓縮的源檔案路徑、以及輸出的路徑
其中輸出的檔案名稱前半部分就是在json中定義的名字

運行
假如name我設定為test1
name這個配置就會讀src目錄下的test1.js並壓縮輸出到build目錄中

 

 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.