Fork me on GitHub
  2015年12月11日
摘要: 进阶的前面两篇讲述了r.js如何通过命令行把所有的模块压缩为一个js文件或把所有的css压缩为一个css文件。其中包括一些压缩配置参数的使用。但以上两种方式有几个问题1、通过命令手动配置压缩选项显得很呆板2、都仅合并为一个文件对于最后只生成一个文件的库来说,这种方式并无不妥。比如jQuery,它的工... 阅读全文
posted @ 2015-12-11 16:55 雨为我停 阅读(291) 评论(0) 推荐(0) 编辑
摘要: 为了应对日益复杂,大规模的JavaScript开发。我们化整为零,化繁为简。将复杂的逻辑划分一个个小单元,各个击破。这时一个项目可能会有几十个甚至上百个JS文件,每个文件为一个模块单元。如果上线时都是这些小文件,那将对性能造成一定影响。RequireJS提供了一个打包压缩工具r.js来对模块进行合并... 阅读全文
posted @ 2015-12-11 16:54 雨为我停 阅读(247) 评论(0) 推荐(0) 编辑
摘要: 这一篇来认识下打包工具的paths参数,在入门一中就介绍了require.config方法的paths参数。用来配置jquery模块的文件名(jQuery作为AMD模块时id为“jquery”,但文件名可通过paths配置可以不必是“jquery.js”,而是带有版本的如“jquery-1.7.2.... 阅读全文
posted @ 2015-12-11 16:54 雨为我停 阅读(166) 评论(0) 推荐(0) 编辑
摘要: RequireJS发布了一个大版本,直接从version1.0.8升级到了2.0。随后的几小时James Burke又迅速的将版本调整为2.0.1,当然其配套的打包压缩工具r.js也同时升级到了2.0.1。此次变化较大,代码也进行了重构,层次更清晰可读。功能上主要变化如下:1,延迟模块的执行。这是一... 阅读全文
posted @ 2015-12-11 16:48 雨为我停 阅读(187) 评论(0) 推荐(0) 编辑
摘要: 这篇来写一个具有依赖的事件模块event。event提供三个方法bind、unbind、trigger来管理DOM元素事件。event依赖于cache模块,cache模块类似于jQuery的$.data方法。提供了set、get、remove等方法用来管理存放在DOM元素上的数据。示例实现功能:为页... 阅读全文
posted @ 2015-12-11 16:23 雨为我停 阅读(216) 评论(0) 推荐(0) 编辑
摘要: 上一篇是把整个jQuery库作为一个模块。这篇来写一个自己的模块:选择器。为演示方便这里仅实现常用的三种选择器id,className,attribute。RequireJS使用define来定义模块。新建目录结构如下这次新建了一个子目录js,把main.js和selctor.js放入其中,requ... 阅读全文
posted @ 2015-12-11 15:20 雨为我停 阅读(174) 评论(0) 推荐(0) 编辑
摘要: RequireJS由James Burke创建,他也是AMD规范的创始人。RequireJS会让你以不同于往常的方式去写JavaScript。你将不再使用script标签在HTML中引入JS文件,以及不用通过script标签顺序去管理依赖关系。当然也不会有阻塞(blocking)的情况发生。好,以一... 阅读全文
posted @ 2015-12-11 15:18 雨为我停 阅读(195) 评论(0) 推荐(0) 编辑