前端常见的模块化规范简介

103 阅读1分钟

前端模块化规范

  • amdcmd规范:用define字段来定义文件的依赖关系

  • commonjs规范:基于文件读写,如果依赖了某个文件会进行文件读取,是动态(执行后才知道结果,不可以tree-shaking)的(不必须写在顶层作用域中)

  - 一个文件一个模块

  - require导入

  - module.exports导出

  • esModule规范:每次引用一个模块就会发请求,静态(可以tree-shaking)的,只能在顶层作用域中引用一个模块(es7新增的import("xxx")也能实现动态导入)

  - 一个文件一个模块

  - export导出

  - import 导入

  • umd规范:兼容amdcmdcommonjs,但不支持esModule