Grunt的task配置都是在 Gruntfile 中的grunt.initConfig方法中指定的.此配置主要包括以任务名称命名的属性,和其他任意数据.一旦这些代表任意数据的属性与任务所需要的属性相冲突,就将被忽略. 举个例子: grunt.initConfig({ concat: { // 这里是concat任务的配置信息. }, uglify: { // 这里是uglify任务的配置信息 }, // 任意数据. my_property: 'whatever', my_src_files:…
Grunt和 Grunt 插件是通过 npm 安装并管理的,npm是 Node.js 的包管理器. Grunt 0.4.x 必须配合Node.js >= 0.8.0版本使用.老版本的 Node.js 被认为是不稳定的开发版.之前,在用grunt来合并文件时,老是报错,原因是node.js的版本太低了. 在安装grunt之前,你需要先将Grunt命令行(CLI)安装到全局环境中. npm install -g grunt-cli 上述命令执行完后,grunt 命令就被加入到你的系统路径中了,以后就…
grunt-init是一个用于自动创建项目脚手架的工具.它会基于当前工作环境和你给出的一些配置选项构建一个完整的目录结构.至于其所生成的具体文件和内容,依赖于你所选择的模版和构建过程中你对具体信息所给出的配置选项. 注意:这个独立的程序曾经是作为Grunt内置的"init"任务而存在的. 安装 为了使用grunt-init,需要将其安装到全局环境中. npm install -g grunt-init这样就会把grunt-init命令安装到你的系统路径中,从而允许你在任何目录中都可以运…
每当运行Grunt时, 你可以为其指定一个或多个任务, 这些任务用于告诉Grunt你想要它做什么事情. 如果你没有指定一个任务,并且你已经定义一个名为 "default" 的任务,那么该任务将会默认被执行. 任务别名 如果指定了一个任务列表taskList,新任务名taskName将是这一个或多个指定任务的别名.当运行此 "任务别名" 时,在taskList 中指定的每个任务都会按照其出现的顺序依次执行.taskList参数必须是一个任务数组.grunt.regis…
Grunt是啥? 很火的前端自动化小工具,基于任务的命令行构建工具. Grunt能帮我们干啥? 假设有这样一个场景: 编码完成后,你需要做以下工作 HTML去掉注析.换行符 - HtmlMin CSS文件压缩合并 – CssMinify JS代码风格检查 – JsHint JS代码压缩 – Uglyfy image压缩 - imagemin 重复而枯燥的工作太多了,我们需要一个自动化的工作流程,让我们更专注于coding,而不是coding外的繁琐工作.于是Grunt应运而生.可以想像,如果在n…
创建插件 创建插件主要有以下几个步骤: (1)通过 npm install -g grunt-init 命令安装 grunt-init .(2)通过 git clone git://github.com/gruntjs/grunt-init-gruntplugin.git ~/.grunt-init/gruntplugin 命令安装grunt插件模版.(3)在一个空的目录中执行 grunt-init gruntplugin .(4)执行 npm install 命令以准备开发环境.(5)为你的插…
这个Gruntfile 实例使用到了5个 Grunt 插件: grunt-contrib-uglify      grunt-contrib-qunitgrunt-contrib-concatgrunt-contrib-jshintgrunt-contrib-watch 上面的uglify,concat,watch这三个插件用的最多,第一个插件是用来压缩文件的,第二个插件是用来合并文件的,第三个插件用来监听文件内容的,如果文件内容改变了,就会触发回调方法进行相应的处理. 我们一步一步来讲解这个 …
转自:http://user.qzone.qq.com/174629171/blog/1404433906 Grunt被定义为:the javascript task runner. 什么算是Javascript task呢?日常开发中,我们经常对js文件进行校验(jshint).压缩.合并等,这些就算是task. Grunt可以把这些经常操作的task的个性化的配置持久化,批量执行,一键搞定. Grunt这个工具听起来挺高大上的,也确实高大上,因为他为我们做了很多脏活.累活(重复性的工作),b…
Grunt入门学习(1) - 环境安装 这周根据项目需要,在项目的基础上分模块开发了一个小的项目板块,但是在规范组织每个模块的代码和其依赖性时比较麻烦,需要一个项目板块的构建工具.各个模块都包括其对应的html页面模板.css样式表.Javascript文件,以及相关的依赖文件,图片等. 具体的目录结构如下图所示: 往往在代码上传和项目发布之前需要将模块内各个文件比如JavaScript文件.CSS样式表,图片等进行压缩合并,目的主要在于减少加载文件的大小,加快文件加载速度,同时也能在一定程度上…
Grunt 新手一日入门 2014.06.20 前端相关 TOC 1. 用途和使用场景 2. 开发一个任务自动处理器 3. 开始学习 Grunt 3.1. 安装 Grunt 3.2. 生成 package.json 文件 3.3. 安装 Grunt 和所需要的插件 3.4. 配置 Gruntfile.js 的语法 3.4.1. 任务配置代码 3.4.2. 插件加载代码 3.4.3. 任务注册代码 3.5. 配置 Gruntfile.js 3.6. 项目文件传输与协作 4. 总结与扩展阅读 当时学…