基本使用
github仓库requirejs
为什么使用requirejs
- 异步加载文件
- 模块化开发
- 一个文件一个模块
- 减少全局变量
- define: 定义模块
- require:加载模块
返回结果可以是任何值:如:函数、字符串、对象
notice:在最佳的实践当中是不写模块名的,可以使用构建工具来自动为它命名模块名,而且有利于后期的打包。
加载文件
- requirejs以一个相对于baseurl的地址来加载所有的代码
data-main
<script data-main="/js/app"></script>
baseUrl(app.js)
requirejs.config({ baseUrl:'/js'})
加载机制
- requirejs使用head.appendChild()将每一个依赖加载为一个script标签
意味着我们的模块加载是可以跨域访问的,也可以从cdn去获取js文件
- 加载即执行
模块下载执行的时候,模块里面的实现也就会执行