• 论AMD,CMD,CommonJs 和 ES6对比


    AMD
    AMD是RequireJS在推广的过程中对异步模块定义的规范化产出
    RequireJS可以动态的异步加载我们项目中的文件 例:

    define([‘package/lib’], function(lib){ 
      function foo(){
       lib.log(‘hello’);
      return {
       foo: foo
    };
    });
    

    使用package加载lib库 通过一个lib的回调函数来使用lib库中的方法,最后通过return来返回。
    CMD
    CMD是SeaJS(淘宝团队提出)在推广的过程中对同步模块定义的规范化产出。

    define(function(require,exports,module){
      //通过require 引入依赖(依赖就近原则)
      var $ = require(‘jquery’);
      var Spinning = require(‘./spinning’);
        }
    

    可以体现出CMD的即用即返回的同步概念.
    CommonJS
    CommonJS规范-module.exports (浏览器并不支持,但是在node.js后端会使用,服务端推荐CommonJS规范,前端推荐使用AMD,CMD的规范)

    export.area = function(v){
         return Math.PI*v;
    };
       export.circumference = function(v){
         return Math.PI/v;
    };
    

    除以上方法外,也可以通过module.exports匿名输出。
    ES6
    上面的AMD,CMD,CommoJs都是ES5里面的规范,下面的export/import是ES6里面的规范。通过export/import输入输出 例:

    export default {
          props:[“name”],
          data(){
             return{ }
          },
          methods:{
             increment(){
                this.$emit(“incre”);
                import(‘./../until’)
    },
             decrement(){
                this.$emit(“decre”);
    }
        }
    }
    
  • 相关阅读:
    monkey事件简介
    Monkey简介
    Package与Activity简介
    adb 命令
    安卓模拟器简介
    iis重启的几种方法
    window下安装FTP服务器
    防止dedecms注入文件挂马的解决方法
    织梦漏洞可疑PHP文件/article文件夹
    织梦Dedecms系统可疑文件include/filter.inc.php扫描出漏洞,该如何解决?
  • 原文地址:https://www.cnblogs.com/supershuai/p/12458676.html
Copyright © 2020-2023  润新知