我应该为建筑图书馆选择哪个? ES5或ES6

时间:2019-02-28 04:46:49

标签: javascript ecmascript-6 libraries ecmascript-5

我想用JS(香草)构建一个简单的库。对于是否遵循基于类的范式或基于原型的范式,我有些困惑。即使正在使用ES5,ES6也已成为主流。 我应该考虑什么

2 个答案:

答案 0 :(得分:2)

执行此操作的最佳方法是使用最新的ES6 +功能编写源代码。现在,您的JavaScript库可能会被三种不同类型的客户端使用:

  1. 浏览器
  2. NodeJS
  3. 另一个图书馆

1。浏览器-对于浏览器,最好的选择是将源代码转换为ES5,然后以IIFE形式构建。

2。 NodeJS -最好的选择是将其转换为es5并以CommonJS(CJS)格式进行构建。

3。另一个库-最好的选择是将源代码转换为es5,但仍保留es5模块(导出/导入)。您可以将构建导出为esm模块。这有助于捆绑工具在将库用作依赖项时更好地进行树状交换。

最常用的js捆绑库:Rollup,Webpack和Parcel支持它们。您可以查看它们以获取更多信息。 编码愉快=)

答案 1 :(得分:1)

您可以使用ES6并将带有babel的代码转换为ES5,以实现向后兼容。

以示例代码为例。

npm-module-boilerplate