定义模块
简单的值对
非依赖的函数式定义
依赖的函数式定义
载入模块
模块的返回值
return 方式
exports导出
非标准模块定义
常用参数
urlArgs
scriptType
waitSeconds
deps
callback
config
map
packages
rquire 压缩
其它问题
1. timeout超时问题
2. 循环依赖问题
3. CDN回退
4. 定义AMD插件
5. 关于require的预定义模块
6. 关于R.js压缩非本地文件的问题
7. 关于R.js - shim功能的说明
8. 关于require加载CSS的问题
基本概念
因为自身设计的不足,JavaScript 这门语言实际上并没有模块化这种概念与机制,所以想实现如JAVA,PHP等一些后台语言的模块化开发,那么我们必须借助 requireJS 这个前端模拟模块化的插件,虽然我们不需要去了解它的实现原理,但是大致去了解它是如何工作的,我相信这会让我们更容易上手。
requireJS使用head.appendChild()将每一个依赖加载为一个script标签。requireJS等待所有的依赖加载完毕,计算出模块定义函数正确调用顺序,然后依次调用它们。