Answers:
捆绑工具使用此工具进行ESM(ECMAScript模块)检测。该汇总的文件说,这非常好:
如果您的
package.json
文件中也有一个module
字段,则诸如Rollup和webpack 2之类的ES6感知工具将直接导入ES6模块版本。
关于汇总1.0的这篇文章说了另一种方式:
该
main
字段确保require
将为使用的Node用户提供UMD版本。该module
字段不是npm的正式功能,而是捆绑程序之间的通用约定,用于指定如何导入我们库的ESM版本。
pkg.module
在Rollup Github Wiki和webpack Docs上有进一步的讨论。
main
是该库的UMD版本的缩小版本吗?还是应该成为一个小型的?那module
呢 我猜该模块不应该缩小,因为用户将使用其捆绑程序(Webpack,Parcel等),并且通过将源文件与ES6模块一起使用,捆绑程序可以破坏树状结构,对吗?