一.简介
二.grunt安装使用
1.安装nodejs
grunt是一个基于nodejs命令的工具,因此需要安装nodejs环境,nodejs下载地址:
https://nodejs.org/en/ 根据自己的主机的位数或者是根据需要下载相应的平台的安装包,
本文档主要是针对windows环境,nodejs安装和安装其他软件没有什么区别不做详细介绍
关键步骤检查nodejs是否安装成功:在windows命令行窗口中输入npm -version
如果输出nodejs的相应的版本号说明安装成功
2.安装grunt命令行工具grunt-cli
打开windows命令行工具输入:
npm install grunt -g grunt-cli
3.安装grunt
打开windows命令行工具输入:
npm install grunt --save-dev
安装完后检查grunt是否安装成功,在命令行窗口输入:
grunt -version
4.grunt构建web前端
在磁盘上新建一个项目,例如:jsproject
4.1在jsproject下新建一个目录src用于存放js源码文件
4.2创建一个文件package.json
文件package.json和src平行存放
package.json输入以下内容
{
"name": "yizhi",//构建签署名
"version": "0.1.0",//构建的版本号
"devDependencies": {
"grunt": "~0.4.5",//依赖grunt 版本
"grunt-contrib-concat": "~0.1.1",//依赖的文件合并插件版本
"grunt-contrib-jshint": "^0.11.3",//依赖的js语法检测插件版本
"grunt-contrib-uglify": "~0.8.0"//依赖的js文件压缩插件版本
}
}
完成package.json配置后输入后:
npm install
(执行该命令时去要cd到项目的根目录) 然后观察项目的根目录下多了个一个node_modules目录文件
4.3创建Gruntfile.js
Gruntfile.js文件与src平行放在项目文件的根目录
Gruntfile.js中配置以下内容
module.exports = function (grunt) {
//config
grunt.initConfig({
pkg: grunt.file.readJSON('package.json'),
//merger javascipt source files into a specific file
concat: {
domop: {
src: ['src/jquery-calendar-v3.js'],
dest: 'dest/common.js'
}
},
//grunt uglify plugin is used to compress javascript file
uglify: {
options: {
banner: '/*! <%= pkg.name %> <%= grunt.template.today("yyyy-mm-dd") %> */\n'
},
build: {
src: 'dest/common.js',//压缩依赖的原文件
dest: 'dest/common.min.js'//压缩后的文件
}
},
//grunt jshint plugin is used to check javascript Syntax
jshint: {
build: ['Gruntfile.js', 'src/jquery-calendar-v3.js'],//检查js文件中代码的语法错误
options: {
jshintrc: '.jshintrc'//从.jshintrc中读取配置
}
},
//grunt watch plugin
watch: {
build: ['src/*js', 'src/*.css'],
task: ['jshint', 'uglify'],
options: {spawn: false}
}
});
//load plugins
grunt.loadNpmTasks('grunt-contrib-concat');
grunt.loadNpmTasks('grunt-contrib-uglify');
grunt.loadNpmTasks('grunt-contrib-jshint');
//grunt.loadNpmTasks('grunt-contrib-watch');
//register tasks
grunt.registerTask('default', ['concat', 'uglify']);//合并和压缩js,需要考虑执行顺序
//在合并压缩之前先使用jshint检测js代码的语法错误,语法错误是根据.jshintrc文件中的配置来提示
};
.jshintrc文件内容如下:
{
"boss":false,
"curly":true,
"eqeqeq":true,
"eqnull":true,
"expr":true,
"immed":true,
"newcap":true,
"noempty":true,
"undef":true,
"browser":true,
"devel":true,
"node":true
}
最后在windows中输入:grunt命令(执行该命令时去要cd到项目的根目录),如果没语法错误,grunt就会自动合并源代码并压缩
来源:oschina
链接:https://my.oschina.net/u/1760791/blog/668320