模块化规范

1.commonJS规范 node.js主要实践者采用同步方式,在客户端可能会陷入“假死”状态,因此 又产生AMD规范 2.AMD require.js异步方式加载模块define()定义模块,用require()加载模块。 首先咱们须要引入require.js文件和一个入口文件main.js。main.js中配置require.config()并规定项目中用到的基础模块。 /** 网页中引入require.js及main.js **/node

/** main.js 入口文件/主模块 **/ // 首先用config()指定各模块路径和引用名 require.config({ baseUrl: "js/lib", paths: { "jquery": "jquery.min", //实际路径为js/lib/jquery.min.js "underscore": "underscore.min", } }); // 执行基本操做 require(["jquery","underscore"],function($,_){ // some code here });jquery

引用模块的时候,咱们将模块名放在[]中做为reqiure()的第一参数;若是咱们定义的模块自己也依赖其余模块,那就须要将它们放在[]中做为define()的第一参数。浏览器

CMD和sea.js CMD是另外一种js模块化方案,它与AMD很相似,不一样点在于:AMD 推崇依赖前置、提早执行,CMD推崇依赖就近、延迟执行。此规范实际上是在sea.js推广过程当中产生的。服务器

ES6 Module ES6 在语言标准的层面上,实现了模块功能,并且实现得至关简单,旨在成为浏览器和服务器通用的模块解决方案。其模块功能主要由两个命令构成:export和import。export命令用于规定模块的对外接口,import命令用于输入其余模块提供的功能。 做者:subwaydown 连接:juejin.im/post/5aaa37… 来源:掘金 著做权归做者全部。商业转载请联系做者得到受权,非商业转载请注明出处。异步