Skip to content

.mjs文件总是以 ES6 模块加载,.cjs文件总是以 CommonJS 模块加载,.js文件的加载取决于package.json里面type字段的设置。

CommonJS 模块加载 ES6 模块

js
(async () => {
  await import('./ejs-package.mjs');
})();

ES6 模块加载 CommonJS 模块

js
// 只能整体加载
import packageMain from 'cjs-package';

同时支持ESM和CJS的模块

json
{
  "exports": {
    "require": "./index.js",
    "import": "./esm/index.js"
  }
}

Reference

Powered by VitePress