饥人谷技术博客

CMD、AMD、CommonJS 规范

2016-10-11  本文已影响42人  块垒

为什么要使用模块化?

最主要的目的:

其他价值:

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

模块的规范:
定义一个统一的前提,大家必须以同样的方式编写模块。

  1. 在一个模块中,存在一个自由的变量require,他是一个函数
    • 这个require函数接受一个模块标识符
    • require返回外部模块所输出的API
    • 如果出现依赖闭环,那么外部模块在被他的传递一台所require的时候可能并没有执行完成;在这种情况下,require返回的对象必须至少包含此外部模块在调用require函数之前就已经准备完毕输出
    • 如果请求的模块不能返回,那么require必须抛出一个错误
  2. 在一个模块中,会存在一个名为exports的自由变量,它是一个对象,模块可以在执行的时候把自身的API加入其中
  3. 模块必须使用exports对象做唯一表示
define(factory)
define(id?,dependencies?,factory);
define('modal', ['jQuery', 'dialog'], function($, Dialog){
    $('.modal').show();
    Dialog.open();
});
上一篇 下一篇

猜你喜欢

热点阅读