微擎系统中,公共引用的js文件包括 `Jquery`、`Util` 在使用以上两个`Js`文件时不需要`require`引用,使用其它Js文件需要遵循 `AMD` 的引用方式。
我们先介绍下 `AMD ( Asynchronous Module Definition )`——`“异步模块定义”`。
require.js 是微擎系统默认采用的 AMD 加载类 采用异步方式加载模块,模块的加载不影响它后面语句的运行。所有依赖这个模块的语句,都定义在一个回调函数中,等到加载完成之后,这个回调函数才会运行。
实现 AMD 规范的加载器其实很多,微擎系系统使用的是 `require.js` 。
微擎系统使用 `require.js` 的好处:
实现 js 文件的异步加载,避免网页失去响应;
管理模块之间的依赖性,便于代码的编写和维护。
注意系统中已经默认`jquery`、`bootstrap`、`angularjs`、`util`等`js`文件,无需要重复引用
了解`requirejs`
http://requirejs.org/
扩展自己的require
在模块也可以使用 requirejs 动态加载自己的JS库,方法如下:
```
<script type="text/javascript">
<!--
var requireExtend = require.config({
baseUrl: 'resource/js/app', //基础目录,将从此目录引用JS
paths: {
'jquery': './jquery.min', //结尾不写.js
},
shim:{
//依赖
'jquery' : {
exports: '$',
deps: ['../lib/jquery-1.11.1.min']
},
}
});
requireExtend(["jquery"]);
//-->
</script>
```