Open MJingv opened 5 years ago
服务器端
require
一个文件
exports
define(id?, dependencies?, factory);
define("alpha", [ "require", "exports", "beta" ], function( require, exports, beta ){ export.verb = function(){ return beta.verb(); // or: return require("beta").verb(); } });
模块加载
装载
返回
异步加载
按需动态加载
define(function(require) { var m1 = require( 'module1' ), m2 = require( 'module2' ); ... });
Node.js
(exports)
define
.gitlab-ci.yml
runner
用 GitLab CI 进行持续集成
AMD CMD CommonJS UMD
js模块化
CommonJS
服务器端
模块的规范,Node.js采用了这个规范require
方法,该方法读取一个文件
并执行,最后返回文件内部的exports
对象AMD && RequireJS
AMD
define(id?, dependencies?, factory);
模块加载
RequireJS
装载
进来,然后返回
一个新的函数(模块),我们所有的关于新模块的业务代码都在这个函数内部操作,其内部也可无限制的使用已经加载进来的以来的模块异步加载
模块,也可以按需动态加载
模块CMD && SesJS
UMD
Node.js
的模块(exports)
是否存在,存在则使用Node.js模块模式。 在判断是否支持AMD(define
是否存在),存在则使用AMD方式加载模块