node下使用grunt管理js文件項目
1、使用npm init命令初始化包配置管理文件package.json
2、添加插件npm插件
npm install grunt --save-dev
npm install grunt-cli --save-dev
npm install grunt-babel --save-dev
npm install grunt-contrib-concat --save-dev
npm install grunt-contrib-jshint --save-dev
npm install grunt-contrib-uglify --save-dev
最后package.json配置文件如下所示
{
"name": "es6",
"version": "1.0.0",
"description": "",
"main": "a.js",
"dependencies": {
"babel": "^5.8.21",//es6轉es5
"webpack": "^1.10.5"http://網站開發將多個js文件打包成一個js文件的工具,暫時沒有用到
},
"devDependencies": {
"grunt": "^0.4.5",//js項目文件構建工具
"grunt-babel": "^5.0.1",//grunt集成babel,將es6轉成es5
"grunt-cli": "^0.1.13",//客戶端命令行工具
"grunt-contrib-concat": "^0.5.1",//將多個js文件合并成一個js文件工具
"grunt-contrib-jshint": "^0.11.2",//驗證js語法工具,不支持es6語法
"grunt-contrib-uglify": "^0.9.1"http://將js壓縮工具
},
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
},
"author": "",
"license": "ISC"
}
添加grunt配置文件gruntfile.js如下所示:
module.exports = function(grunt) {
//配置參數,grunt配置文件
grunt.initConfig({
pkg: grunt.file.readJSON('package.json'),
jshint: {
options:{
"curly": true,
"eqnull": true,
"eqeqeq": true,
"undef": false,
esnext: true
},
all: ['a.js','b.js']
},
babel: {
dist:{
'out/a.js':'a.js',
'out/b.js':'b.js'
}
},
concat: {
options: {
separator: ';',
stripBanners: true
},
dist: {
src: [
"out/a.js",
"out/b.js"
],
dest: "out/default.js"
}
},
uglify: {
options: {
},
dist: {
files: {
'out/default.min.js': 'out/default.js'
}
}
}
});
//載入concat和uglify插件,分別對于合并和壓縮
grunt.loadNpmTasks('grunt-contrib-jshint');
grunt.loadNpmTasks('grunt-babel');
grunt.loadNpmTasks('grunt-contrib-concat');
grunt.loadNpmTasks('grunt-contrib-uglify');
/*
grunt.loadNpmTasks('grunt-contrib-cssmin');
*/
//注冊任務
grunt.registerTask('default', ['babel','concat', 'uglify']);
}
posted on 2015-08-07 11:47
SIMONE 閱讀(398)
評論(0) 編輯 收藏 所屬分類:
nodejs