windows下grunt的快速入门
1.认识grunt
grunt是什么:他是一套前端自动化工具,是一个基于nodejs的命令行工具。(Grunt和Grunt插件是通过npm 安装并管理的,所以首先要安装nodejs)。
grunt能干什么:1.压缩文件 2.合并文件 3.简单的语法检查 4.监听文件变动 5.less编译
grunt优点:1.减轻劳动,简化工作 2.免费,没有盗版 3.插件多,而且可以自己编写插件
2.grunt安装与使用
第一步:添加package.json和gruntfile.js文件
package.json配置项的添加方式:
a:手动添加 (下面内容已经将基本的grunt插件写好)
{
"name": "grunt_test",
"version": "0.0.1",
"description": "grunt test",
"main": "index.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
},
"devDependencies": {
"grunt": "^0.4.5",
"grunt-contrib-jshint": "*",
"grunt-contrib-uglify": "*",
"grunt-contrib-cssmin":"*",
"grunt-contrib-imagemin":"*",
"grunt-contrib-watch": "*",
"grunt-contrib-concat":"*"
},
"keywords": [
"grunt"
],
"author": "caihe",
"license": "ISC"
}
说明:
grunt-contrib-jshint: 检查javascript语法
grunt-contrib-uglify: 压缩以及合并js文件
grunt-contrib-cssmin:压缩以及合并css文件
grunt-contrib-imagemin:图像压缩模块
grunt-contrib-watch:监视文件变动,做出相应动作
grunt-contrib-concat:合并文件
然后cmd窗口中进入到当前项目的根目录输入命令行 :npm install
b:命令行实现:npm install grunt-contrib-jshint --save-dev等
gruntfile.js文件配置:
gruntfile.js 的作用1.读取package.json的信息 2.插件加载、注册任务、运行任务
module.exports = function(grunt){
//项目配置
grunt.initConfig({
//读取配置项
pkg:grunt.file.readJSON("package.json"),
//具体任务
uglify:{
options:{
//加注释
banner:"/* 这个文件 <%= pkg.name %><%= pkg.version%> \n*/"
},
build:{
//被压缩的文件的路径
src: "src/jquery-1.9.1.js",
//被压缩后的文件路径
dest:"dest/jquery-1.9.1.min.js"
}
},
//合并
concat:{
options:{
//加注释
banner:"/* 这个文件 <%= pkg.name %><%= pkg.version%> 合并的js\n*/"
},
build:{
//被压缩的文件的路径
src: "src/*.js",
//被压缩后的文件路径
dest:"dest/concat.js"
}
},
jshint: {
files: ['Gruntfile.js'],
options: {
}
},
watch: {
files: ['src/*.html','src/*.css'],
tasks: ['jshint']
}
});
//加载插件
grunt.loadNpmTasks("grunt-contrib-uglify");
grunt.loadNpmTasks('grunt-contrib-jshint');
grunt.loadNpmTasks('grunt-contrib-watch');
grunt.loadNpmTasks('grunt-contrib-concat');
//默认执行任务
grunt.registerTask("default",["uglify","concat","jshint",'watch']);
};
然后cmd窗口中进入到当前项目的根目录输入命令行 :grunt
可执行grunt任务grunt watch可监听文件变化
windows下grunt的快速入门的更多相关文章
- Windows下通过脚本快速修改IP地址
Windows下通过脚本快速修改IP地址 如果通过Windows的网络属性修改Ip/网关,真是太麻烦了. 经常要切换ip,所以我写了两个脚本: c:\办公室.bat netsh interface i ...
- windows下Graphviz安装及入门教程
下载安装配置环境变量 intall 配置环境变量 验证 基本绘图入门 graph digraph 一个复杂的例子 和python交互 发现好的工具,如同发现新大陆.有时,我们会好奇,论文中.各种专业的 ...
- windows下用wubi快速安装ubuntu
由于开发需要,我们可能要用到ubuntu,然而又不能完全抛弃windows,于是双系统是个不错选择. wubi是一个在windows下快速安装ubuntu双系统的工具,它包含在ubuntu 12及以前 ...
- IDEA工具下Mybaties框架快速入门程序
本篇文章介绍在IDEA工具下mybatis快速入门程序分为以下五步 1 添加依赖包 2 编写pojo对象 3 编写映射文件 4 编写核心配置文件 5 测试框架 详细如下 建立Mod ...
- Windows下RabbitMQ安装及入门
1.Windows下安装RabbitMQ需要以下几个步骤 (1):下载erlang,原因在于RabbitMQ服务端代码是使用并发式语言erlang编写的,下载地址:http://www.erlang. ...
- [转]RabbitMQ系列(一):Windows下RabbitMQ安装及入门
https://blog.csdn.net/hzw19920329/article/details/53156015 1.Windows下安装RabbitMQ需要以下几个步骤 (1):下载erlang ...
- :Windows下RabbitMQ安装及入门
1.Windows下安装RabbitMQ需要以下几个步骤 (1):下载erlang,原因在于RabbitMQ服务端代码是使用并发式语言erlang编写的,下载地址:http://www.erlang. ...
- 在WINDOWS下 三步快速配置 eclipse c++ 环境
所需软件 1.Eclipse IDE for C/C++ Developers http://www.eclipse.org/downloads/packages/eclipse-ide-cc-dev ...
- Windows下vue-cli脚手架搭建入门<一>
简单了解Node.js.npm,安装Node.js,下载网址:http://nodejs.cn/download/ 查看node,npm安装成功与否.打开cmd命令行,输入命令 node-v .np ...
随机推荐
- MySQL命令1
开始学习MySQL. // 创建数据库 CREATE DATABASE db_name; // 删除数据库 DROP DATABASE db_name; // 显示数据库 SHOW DATABASES ...
- C. Fountains
\(整体思路没错,但是我貌似太麻烦了.......\) \(分情况讨论\) \(Ⅰ.coin和diamond各选一个物品,这个简单\) \(Ⅱ.在coin中选两个或者在diamond选两个\) \(开 ...
- 洛谷p1149
一道很有意思的题目嘞. 这道题目看起来,用搜索似乎无疑了. 我想了这样一个办法(看了很多博客似乎都没用这种方法),可能是觉得太麻烦了吧: 1.我们先把0到9的数字排列,找出排列消耗火柴等于0的序列.这 ...
- 【Kafka】JavaAPI操作
目录 先创建Maven工程导入jar包 Producer API Consumer API Stream API 先创建Maven工程导入jar包 帮助文档地址:http://kafka.apache ...
- python之文件操作模块(os和shutil)
1.os.name #操作系统类型 如果是posix,说明系统是liunx.Unix或Mac OS X,如果是nt,就是windows2.os.enviro #操作系统中定义的环境变量3.os.e ...
- 「雕爷学编程」Arduino动手做(8)——湿度传感器模块
37款传感器和模块的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是不止37种的.鉴于本人手头积累了一些传感器与模块,依照实践出真知(动手试试)的理念,以学习和交流为目的,这里准备 ...
- 前端ie7的兼容问题及解决方案(未完待续)
最近在维护一些老的项目,需要兼容ie7 ,css3就不能用了,这里总结一下碰到的问题及解决方案. 1.盒模型 ie7.8 的盒模型都是 box-sizing为content-box的盒模型,这里在做 ...
- Lvs 调度算法
lvs scheduler:仅根据IP和端口进行调度 静态方法:仅根据算法本身进行调度,不考虑当前服务器实际负载情况:保证起点公平 RR:round robin, 轮调,轮询,轮叫: 调度器通过&qu ...
- 使用Redis——拳打南山敬老院,脚踩北斗幼儿园
拳打南山敬老院,脚踩北斗幼儿园 Redis 你说你用过对吧,你们怎么用的? 面试官您好,因为传统的关系型数据库如Mysql已经不能适用所有的场景了,比如秒杀的库存扣减,APP首页的访问流量高峰等等,都 ...
- 4.1Go if-else
1. Go if-else Golang程序的流程控制决定程序如何执行,主要有三大流程控制,顺序控制.分支控制.循环控制. 条件语句需要定义一个或多个条件,并且对条件测试的true或false来决定是 ...