AMD_CMD_RequireJS

2017-03-31  本文已影响0人  clark124

题目1: 为什么要使用模块化?

题目2: CMD、AMD、CommonJS 规范分别指什么?有哪些应用

CommonJS

//模块定义 myModel.js

var name = 'Clark';

function printName(){
    console.log(name);
}

function printFullName(firstName){
    console.log(firstName + name);
}

module.exports = {
    printName: printName,
    printFullName: printFullName
}
//加载模块

var nameModule = require('./myModel.js');

nameModule.printName();

AMD

使用
定义模块:requireJS定义了一个函数 define,它是全局变量,用来定义模块

define(id?, dependencies?, factory);

加载和使用模块:

require([module], callback);

例子:

require(['math'], function (math) {
  math.add(2, 3);
});
console.log('hello world');

console.log()的执行和模块的加载是异步的,不会因为等待模块的加载而使浏览器“假死”

CMD

使用

定义模块:requireJS定义了一个函数 define,它是全局变量,用来定义模块

define(id?, dependencies?, factory);

加载模块

seajs.use([module], callback);
seajs.use(['./a', './b'], function(a, b) {
  a.doSomething();
  b.doSomething();
});

AMD和CMD

预览
代码地址
后端数据mock成功

上一篇 下一篇

猜你喜欢

热点阅读