+
95
-

esm与umd 版本有什么区别?

请问esm与umd 版本有什么区别?

网友回复

+
15
-

在了解esm与umd之前我们来看一下两个规范,amd与commonjs

amd(Asynchronous Module Definitions)规范因RequireJS而出名,其适用于浏览器端,commonjs常被用于node中,当然其也可通过Browserify用于浏览器中。

amd

其用法如下:
// 文件名: foo.js
define(['jquery'], function ($) {
// 方法
function myFunc(){};

// 暴露公共方法
return myFunc;
});

定义的第一个部分是一个依赖数组,第二个部分是回调函数,只有当依赖的组件可用时(像RequireJS这样的脚本加载器会负责这一部分,包括找到文件路径)回调函数才被执行。 理想状态下,期望其依赖是异步加载的,通过在中注入script,不阻塞浏览器的加载和渲染,但实际环境下,其表现的没有那么好,因此需要amd 模块为一个单文件模块并与require.js 优化器配合来进行渲染 总结如下:

异步加载

其被提出,主要用于...

点击查看剩余70%

我知道答案,我要回答