全文预览已结束
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
用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. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 3年级老师教学计划8篇
- 学生会一年度总结模板8篇
- 学生实习顶岗总结报告8篇
- 承诺书代收度假款项透明管理
- 门面出租合同协议书
- 公司与保安签订劳务简单合同
- 保健品行业农民工工资支付承诺书
- 合同法培训课程课件
- 民间私人房产质押借款合同书
- 全新运输承包合同书样本
- 临床技能学智慧树知到期末考试答案章节答案2024年温州医科大学
- 2024年辽宁省九年级中考一模历史试题(解析版)
- 16J914-1 公用建筑卫生间
- 电力拖动自动控制系统智慧树知到期末考试答案2024年
- 2024年云南省昆明官渡区政务服务窗口单位辅助性用工招聘18人历年高频考题难、易错点模拟试题(共500题)附带答案详解
- (新湘科版)六年级下册科学知识点
- 中华礼仪文化智慧树知到课后章节答案2023年下广西国际商务职业技术学院
- 【小升初专项复习】部编版小升初语文古诗词情景填空【含答案】
- 酒店流水单模版
- 幼升小个人简历模板
- 《扩张型心肌病》PPT课件.ppt
评论
0/150
提交评论