CMD的基本特征
- 各个模块是单例模式
- 在模块的作用域内不应该被引入
- 执行过程应该是懒式的
模块定义
模块定义以“define”关键字开始开始,define本质上是一个函数,使用define本质上是一次函数调用,入参为定义工厂,工厂可以是一个函数,也可以是一个对象,如果是函数,那么会传递给这个函数三个入参,分别是require、exports和module
例如
define(function(require, exports, module) { // 模块定义在此 })
define([ 'foo', 'bar' ]);
个人感觉:
- require提供了引入机制,提供了一种方式来建立依赖,和C中的include和java中的import类似;
- exports提供了导出机制,提供了私有和共有分离,未使用exports语句导出的变量或者函数,其他模块即使引用此模块也不能使用;
- module提供了模块信息描述
相关推荐
JavaScript CMD规范整理
seajs常见配置解析和常见插件的使用。sea.js,seajs-css.js,seajs-debug.js,seajs-preload.js,seajs-log.js等
sea.js遵循CMD规范,用于实现js在浏览器端的模块化开发。 sea.js中只有局部require。
本篇文章给大家介绍js模块规范之AMD规范和CMD规范,模块化是一种处理复杂系统分解为代码结构更合理,可维护性更高的可管理的模块的方式,对js amd cmd规范感兴趣的童鞋可以来本文学习
HaloJS 是一款基于ZeptoJS并采用 CMD 规范面向移动端提供各种实用工具的组件库
一个用于 fangfis(CMD) 模块合并工具的 gulp 插件,支持异步调用模块合并
NULL 博文链接:https://shuizhongyue.iteye.com/blog/2197210
CMD规范示例DEMO
同时还有CMD规范,为同步加载方案如seaJS。 ES6在语言规格的层面上,实现了模块功能,而且实现得相当简单,完全可以取代现有的CommonJS和AMD规范,成为浏览器和服务器通用的模块解决方案。 ES6模块主要有两个功能:...
中国机车远程监测与诊断系统(CMD系统)总体暂行技术规范。cmd系统。总体技术规范。 中国机车远程监测与诊断系统(以下简称CMD系统)的基本原则、技术要求、车载子系统、数据传输子系统和地面综合应用子系统等。 本...
简单分页插件simplePagination改造为CMD规范模块 http://blog.csdn.net/qinshenxue/article/details/43561691
modJS是一个精简版的AMD/CMD规范,并不完全遵守AMD/CMD规范,目的在于希望给使用者提供一个类似nodeJS一样的开发体验,同时具备很好的线上性能。 使用define来定义一个模块: define (id, factory) 在平常开发中,...
JRaiser加载器基于CMD规范,提供了良好的模块封装、调用机制,在利于功能分解的同时,也让您在复杂的模块依赖关系中解脱。JRaiser自带的功能模块可以简化各种前端应用的构筑过程,您也可以基于这些模块,为独特的...
中国机车远程监测与诊断系统(CMD系统)地面综合应用子系统暂行技术规范(印发稿)DOC.pdf中国机车远程监测与诊断系统(CMD系统)地面综合应用子系统暂行技术规范(印发稿)DOC.pdf
3.CMD规范 通用模块定义 规范实现者: seaJS 服务端和浏览器通用 官方模块规范 1.ESM规范 就是ES6 Module 各浏览器和服务端 目前常用的就是浏览器端的RequireJS、NodeJS、以及ESM CommonJS语法分析 module....
现在js的module规范里面,很大一部分都是遵循AMD规范,但是还有很多一部分在使用seajs的CMD规范,以及阿里系的KISSY的module规范(我们对其简称KMD)。 那么,其实我们可以用遵循AMD规范的module,然后把它适配到能...
fis3 已经默认不自带模块化开发支持,那么如果需要采用 cmd 规范作为模块化开发,请使用此插件。 请配合 sea.js 一起使用。 注意:需要对目标文件设置 isMod 属性,说明这些文件是模块化代码。 fis.match('/modules/...
浅析AMD CMD CommonJS规范--javascript模块化加载学习心得总结.docx
如果你听过js模块化这个东西,那么你就应该听过或CommonJS或AMD甚至是CMD这些规范咯,我也听过,但之前也真的是听听而已。 现在就看看吧,这些规范到底是啥东西,干嘛的。