用于反应组件库的 cjs 或 esm

Cod*_*ker 5 javascript commonjs node.js npm es6-modules

我有一个组件库,它将发布到 npm 以供 razzle 应用程序使用。我想要获得关于最佳实践的意见的主要问题是,包应该使用 cjs 还是 esm 构建,以及每个包的缺点是什么?

我可以只构建 cjs 吗?

jog*_*cia 4

环境管理署

  • 摇树
  • 用代码更容易理解。
  • 允许延迟加载组件
  • 提供更轻松地导入代码的特定部分的能力。

西杰士

  • 交叉构建
  • 更多环境支持

如果没问题的话,你可以两者都用。适合每种环境。CJS 适用于大多数环境。

如果您的目标只是 React 或其他前端,那么 es6 将为您提供上述所有优势。但如果你希望你的组件可以像遗留应用程序一样在 javascript webpack 中使用,你应该使用 cjs,也适用于后端。