在发布npm包时,我应该使用dist的src吗?

时间:2017-04-17 23:39:24

标签: javascript node.js npm webpack

当将一些javascript作为库发布到npm时,我应该设置" main"在pacakge.json中," dist / index.js"或者我的" src / index.js"?

假设库是使用webpack构建的,并且可以与webpack中的项目一起使用。

两个选项之间的区别是什么。 webpack能否在这两个选项中进行树摇动?

谢谢!

1 个答案:

答案 0 :(得分:4)

如果您的图书馆旨在在浏览器中使用,那么记住并非所有人都使用模块捆绑包这一点非常重要。

main属性设置为捆绑文件(在您的情况下为dist/index.js)并确保您拥有执行构建的prepublish脚本,这是一种很好的做法。在发布之前一步。

使用汇总工具you can use the module property支持树形抖动,并确保它指向使用ES2015导入的模块。

例如:

{
  "main": "dist/index.js",
  "module": "src/index.js"
}

Rollup会尊重这一点,但让Webpack改变你的代码是little more involved