什么是【UMD】

作者 : 开心源码 本文共682个字,预计阅读时间需要2分钟 发布时间: 2022-05-12 共219人阅读

UMD 叫做通用板块定义规范(Universal Module Definition)。也是随着大前台的趋势所诞生,它可以通过运行时或者者编译时让同一个代码板块在使用 CommonJs、CMD 甚至是 AMD 的项目中运行。未来同一个 JavaScript 包运行在浏览器端、服务区端甚至是 APP 端都只要要遵守同一个写法就行了。

它没有自己专有的规范,是集结了 CommonJs、CMD、AMD 的规范于一身,我们看看它的具体实现:

((root, factory) => {    if (typeof define === 'function' && define.amd) {        //AMD        define(['jquery'], factory);    } else if (typeof exports === 'object') {        //CommonJS        var $ = requie('jquery');        module.exports = factory($);    } else {        root.testModule = factory(root.jQuery);    }})(this, ($) => {    //todo});

不难发现,它在定义板块的时候回检测当前使用环境和板块的定义方式,将各种板块化定义方式转化为同样一种写法。它的出现也是前台技术发展的产物,前台在实现跨平台的道路上不断的前进,UMD 规范将浏览器端、服务器端甚至是 APP 端都大统一了,当然它或者许不是未来最好的板块化方式,未来在 ES6+、TypeScript、Dart 这些拥有高级语法的语言回代替这些方案。

建议阅读,这样对板块化规范的历史道路更加理解:

  • 《什么是 CommonJs》
  • 《什么是 CMD》
  • 《什么是 AMD》

说明
1. 本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长!
2. 分享目的仅供大家学习和交流,您必须在下载后24小时内删除!
3. 不得使用于非法商业用途,不得违反国家法律。否则后果自负!
4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解!
5. 如有链接无法下载、失效或广告,请联系管理员处理!
6. 本站资源售价只是摆设,本站源码仅提供给会员学习使用!
7. 如遇到加密压缩包,请使用360解压,如遇到无法解压的请联系管理员
开心源码网 » 什么是【UMD】

发表回复