模块(cmd amd)

Posted lgyong

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了模块(cmd amd)相关的知识,希望对你有一定的参考价值。

Amd和Cmd的代表分别是require.js以及sea.js


AMD (amd 提前读取并加载(前置读取并加载))

是 RequireJS 在推广过程中对模块定义的规范化产出。https://github.com/amdjs/amdjs-api/wiki/AMD

 

define([\'./a\',\'./b\'],function(a,b){
   a.doSomething()
   b.doSomething()
}) 

 


CMD (cmd 提前读取后加载)

是 SeaJS 在推广过程中对模块定义的规范化产出。https://github.com/seajs/seajs/issues/242

(NodeJS是CommonJS规范的实现,webpack 也是以CommonJS的形式来书写。)

define(function(require, exports, module) {
  var a = require(\'./a\')
  a.doSomething()
  var b = require(\'./b\')
  b.doSomething()
})

 

1.cmd 提前读取后加载,而是在需要时加载 “懒加载”==as lazy as possible

2.一个模块就是一个文件(崇尚简单)

 

参考:

js模块化编程之彻底弄懂CommonJS和AMD/CMD!
【面试系列】之一:关于Cmd和Amd
AMD 和 CMD 的区别有哪些?
SeaJS与RequireJS最大的区别

https://www.zhihu.com/question/21347409#answer-2323656

 

原生js window 好像没有define方法,这应该是SeaJS框架里的 你要用首先要导入SeaJS包

以妓会友,评赞走起

 

以上是关于模块(cmd amd)的主要内容,如果未能解决你的问题,请参考以下文章

前端模块化:CommonJS,AMD,CMD,ES6

JavaSript模块规范 - AMD规范与CMD规范介绍(转)

前端模块化方案:CommonJS/AMD/CMD/ES6规范

amd与cmd

JavaSript模块规范 - AMD规范与CMD规范介绍

JavaSript模块规范 - AMD规范与CMD规范介绍