AMD规范的一些注意点【2018-03-31】

一、define("myModule",[a,b],function(){    });

1."myModule":当前模块名

2.[a,b]:依赖的外部模块

3.function:回调函数。依赖的外部模块全部加载完毕后,执行。

其他情况:

1.模块名可省略:define([a,b],function(){    });匿名模块,模块名就是它的文件路径。

2.不依赖其他模块:

define({a:111,b:222});

define(function(){  return {a:111,b:222}  }); 函数的返回值必须是一个对象,它就是输出的模块。

3.当一个模块不依赖其他模块时,eg:define('a',[ ],function(){    });直接执行回调函数(可以认为依赖立即加载完毕,因此执行回调)。因此,依赖a模块的模块,是在a模块的回调函数执行完毕后,执行自己的回调。

【注】

define定义后,对于define语句的第三个参数,即回调函数,就已经执行完毕。得到的结果就是,define定义的那个模块,也就是回调函数返回的对象。


二、require([a,b],function(){    })

a、b两个模块加载完毕后,执行回调函数function完成需要的逻辑。

【注】

加载的模块a、b,就是define时,a、b模块的回调函数返回的对象。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容