/** * created by lee on 2014.07.02 002. */
module.exports = function
(grunt) ,
//任務一:壓縮a.js,不混淆變數名,保留注釋,新增banner和footer
builda: ,
files:
},//任務二:壓縮b.js,輸出壓縮資訊
buildb: ,
files:
},//任務三:按原檔案結構壓縮js資料夾內所有js檔案
buildall: ]},
//任務四:合併壓縮a.js和b.js
release: }},
filerev: *.js',
'<%= pkg.dist %>/styles/*.css',
'<%= pkg.dist %>/images/*.',
'<%= pkg.dist %>/styles/fonts/*']}},
copy: ',
'.htaccess',
'*.html',
'views/*.html',
'images/*.',
'fonts/*']}]
},styles: *.css'},
script: *.js'}
},useminprepare: ,
post: {}}}
}},
//performs rewrites based on filerev and the useminprepare configuration
usemin: *.html'],
css: ['<%= pkg.dist %>/styles/*.css'],
options:
}});
//載入提供任務的外掛程式
grunt.loadnpmtasks('grunt-contrib-uglify');
grunt.loadnpmtasks('grunt-filerev');
grunt.loadnpmtasks('grunt-usemin');
//預設任務
grunt.registertask('default', ['uglify:release']);
grunt.registertask('mina', ['uglify:builda']);
grunt.registertask('minb', ['uglify:buildb']);
grunt.registertask('minall', ['uglify:buildall']);
grunt.registertask('build', ['uglify:buildall']);
}
這裡主要使用的是 grunt-contrib-uglify 使用了檔案壓縮和檔案合併;
pkg: grunt.file.readjson('package.json'),
讀取packages.json 檔案裡面的資訊.
配置任務,使用uglify在裡面配置任務 如上檔案的 builda,buildb,buildall;
對於每個任務可配置的: 詳細閱讀 github uglify doc
demotask:,preservecomments: 'all', //不刪除注釋,還可以為 false(刪除全部注釋),some(保留@preserve @license @cc_on等注釋)
footer:'\n/*! <%= pkg.name %> 最後修改於: <%= grunt.template.today("yyyy-mm-dd") %> */'//新增footer
}, files:
}
grunt系列啟動grunt專案
啟動grunt project 1 已經存在的grunt project 假設grunt cli已經安裝了,專案裡面已經有package.json和gruntfile,啟動很簡單 npm install grunt 2 乙個新的grunt project 增加兩個檔案到你的專案裡面 你會在這個檔案裡...
grunt學習筆記一 grunt安裝
一 nodejs 2.配置系統和使用者環境變數 安裝包自動新增 msi安裝包,exe安裝包需要手動新增環境變數,類似jdk環境變數配置 3.測試 cmd進入命令列模式,node v 和 npm v 檢測是否安裝成功 4.編寫nodejs測試 啟動cmd,進入node模式,輸入 console.log...
grunt學習筆記五 grunt模板
1.安裝grunt init npm install g grunt init linux git clone grunt init jquery windows git clone userprofile grunt init jquery userprofile 目錄指的是 windows使用者...