用Grunt.js管理你的项目.docx_第1页
用Grunt.js管理你的项目.docx_第2页
用Grunt.js管理你的项目.docx_第3页
用Grunt.js管理你的项目.docx_第4页
用Grunt.js管理你的项目.docx_第5页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

用Grunt.js管理你的项目Grunt.js是什么?Grunt.js是一个Javascript Task Runner(Javascript任务运行器),其基于NodeJS,可用于自动化构建、测试、生成文档的项目管理工具。Grunt.js并不是仅仅是构建工具,实际上他只是任务运行器,管理每个子任务的自动化运行,我们还能使用他做更多东西。为什么使用Grunt.js?简单的说:为了自动化。对于前端项目,例如: 为了明确模块分工,我们可能会将Javascript代码拆成很小很小的一个个js文件,但是我们知道,在最终页面上,我们知道过多的js文件会产生过多的Http Request,这不利于页面优化。所以我们可能希望可以合并这些js文件的工具。 为了用户端请求的文件尽量小,我们希望我们的HTML、Javascript等文件能进行压缩。 我们可能需要对源代码进行一些单元测试和回归测试。 我们可能希望有工具能够通过源代码备注自动生成文档,免得手动再写文档。 很明显,这一切都有各种各样的小工具能帮我们做到,但是我们希望最好能输入一个命令,打开一个程序,或者干脆每次修改文件保存后自动进行这一切事情。以前我们可能使用NodeJS自己写一个build程序,但是现在Grunt.js能够提供我们需要的一切。安装Grunt.jsGrunt.js 0.4之后,其不再使用全局方式安装整个Grunt.js,而是在全局安装Grunt.js Client,然后在当前项目中安装Grunt,来避免未来不同项目对Grunt不同版本的依赖关系。如果安装了之前的版本,可以使用npm的命令来删除掉原来的Grunt.js。npm uninstall -g grunt然后安装Grunt.js Client:npm install -g grunt-clipackage.jsonpackage.json是项目的配置文件,有一些项目的依赖信息,以及作者、版本等信息。我们先写一个简单的package.json。 name: my-project, version: 0.1.0, devDependencies: grunt: 0.4.1 name属性,表示该项的名字。version属性,则是该项目的版本号。devDependencies属性,则包含该项目的依赖,目前我们的依赖只有grunt,以及版本为0.4.1。在终端大概包含该package.json的目录,输入命令:npm install我们会发现,该目录此时多了一个node_modules文件夹,里面有个grunt文件夹,这个就是我们安装在项目的Grunt.js。用Grunt.js进行压缩js代码grunt-contrib-uglify是Grunt.js的一个任务模块,其基于著名的js压缩工具uglify,进行js压缩任务。首先我们在项目依赖加上grunt-contrib-uglify,package.json如下: name: my-project, version: 0.1.0, devDependencies: grunt: 0.4.1, grunt-contrib-uglify: 0.2.0 再使用:npm install我们就安装了grunt-contrib-uglify了。写Gruntfile.jsmodule.exports = function(grunt) / 给grunt添加些设置 grunt.initConfig( uglify: options: banner: /*! 版权所有,这里乱写 */n , build: src: src/core.js, /要压缩的源文件,我们也可以用*表示通配,比如src/*.js dest: dst/core.js /压缩后输出的位置 ); / 载入 uglify 插件任务 grunt.loadNpmTasks(grunt-contrib-uglify); / 定义默认需要执行的任务 grunt.registerTask(default, uglify);Gruntfile.js文件用于定义任务,以及任务组的执行顺序等。上面的文件我们定义将src/core.js

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论