前端模块化规范Commonjs/Amd/Cmd

简单描述下区别:

Commonjs: 用于服务器端, 通过export导出模块,require加载模块,module表示模块本身,加载过程为同步, 不适合客户端. nodejs是用commonjs规范

写法: a.js     var a = function(x) {console.log(x)};   module.export = a;

    b.js     var b= reuqire('./a.js);   b('啦!!');

Amd: 常见实现库requirejs, 异步加载

写法: 

// module1.js 

define(

{

    methodA: function() {

  console.log('我是module1的methodA');

    },

    methodB: function() {

  console.log('我是module1的methodB');

    }

})

// module2.js

define(function () {

    return {

  methodA: function() {

    console.log('我是module2的methodA');

  },

  methodB: function() {

    console.log('我是module2的methodB');

  }

    };

});

// module3.js

define(['module1', 'module2'], function(m1, m2) {

    return {

  methodC: function() { m1.methodA(); m2.methodB();}

     };

});

// main.js

require(['module3'], function(m3){ m3.methodC(); });

 

// main.html

<script data-main="main" src="require.js"></script>

 

Cmd跟Amd类似

// CMD

define(function(require, exports, module) {

var a = require('./a');

a.doSomething();  // 此处略去 100 行

var b = require('./b');// 依赖可以就近书写

b.doSomething();

// ...

})

 

 

注: 参考 https://www.cnblogs.com/lishuxue/p/6000205.html

转载于:https://www.cnblogs.com/fresh-bright/p/10525993.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值