AMD CMD CommonJs UMD ES6 一路演进
define(id?, dependencies?, factory);
// moudle-a.js
define(‘moudleA‘, function() {
return {
a: 1
}
});
// moudle-b.js
define([‘moudleA‘], function(ma) {
var b = ma.a + 2;
return {
b: b
}
});
define(factory);
// moudle-a.js
define(function(require, exports, module) {
module.exports = {
a: 1
};
});
// moudle-b.js
define(function(require, exports, module) {
var ma = require(‘./moudle-a‘);
var b = ma.a + 2;
module.exports = {
b: b
};
});
module
代表当前模块,module.exports
是对外的接口; require
方法用于加载模块//moudle-a.js
moudle.exports = {
a: 1
};
//moudle-b.js
var ma = require(‘./moudle-a‘);
var b = ma.a + 2;
module.exports ={
b: b
};
function(e, t) {
"object" == typeof exports && "object" == typeof module
? module.exports = t()
: "function" == typeof define && define.amd
? define([], t)
: "object" == typeof exports
? exports.xmh = t()
: e.xmh = t()
} (window, (function() {
// todo
}))
import
加载模块,export
导出模块//module-a.js
export default {
a: 1
}
//module-b.js
import { a } from ‘./module-a‘
export const b = a + 2
原文:https://www.cnblogs.com/babywhale/p/13516855.html