1. 子目录别名

  1. // ./node_modules/es-module-package/package.json
  2. {
  3. "exports": {
  4. "./submodule": "./src/submodule.js"
  5. }
  6. }
  7. // 使用 下面这样不指定别名就会报错
  8. import submodule from 'es-module-package/submodule';
  9. // 加载 ./node_modules/es-module-package/src/submodule.js

2. ESM加载CJS模块

  1. // 正确
  2. import package from 'commonjs-module'
  3. // 错误 因为CJS导出一个对象,要支持ESM静态分析只能整个对象加载
  4. import { a } from 'commonjs-module'
  5. // 可以这样
  6. import package from 'commonjs-module'
  7. const { a } = package