引用模块:
require('./module')
定义模块:
module.exports = {}
例如:Nodejs
引用模块:
require([module], callback)
定义模块:
define([module], function(module) {})
例如:requirejs
引用模块:
seajs.use(['module'], function(module) {})定义模块:
define(function(require, exports, module) { var $ = require('jquery.js') })例如:seajs
AMD推崇依赖前置,在定义模块的时候就要声明其依赖的模块
CMD推崇依赖就近,在用到某个模块的时候再去require
引用模块:
import module
定义模块:
export module
避免加载RequireJS造成页面失去响应:
<script src="js/require.js" defer async="true" ></script>注: IE不支持async只支持defer
采用AMD规范定义的require()函数
// main.js require(['moduleA', 'moduleB', 'moduleC'], function (moduleA, moduleB, moduleC){ // some code here })第一个参数是一个数组表示所依赖的模块,第二个参数是一个回调函数
使用require.config()方法,我们可以对模块的加载行为进行自定义。require.config()就写在主模块main.js的头部。参数就是一个对象