我一直在玩 webpack 和 npm 注册表。我创建了我发布到 npm 注册表的own little project.。一切似乎都很好,但有一件事让我担心。
由webpack(lib/index.js
)构建的文件包含近2k行代码,而我的库非常小。我看到它包含两个我使用的依赖项prop-types
和detect-browser
。他们制作了大部分代码。
在下载这两个库并在测试项目中使用它们之后将其悬停,我希望它们会以某种方式通过树摇动或其他类似方式进行重复删除,但我的包的大小仍然相同。
基本上,我所要问的是:我的图书馆包含的代码多于必要吗?对我来说似乎是这样。
我还尝试在测试项目中另外安装prop-types
和detect-browser
,以查看捆绑包大小是否保持不变。 Hower我的库的大小仍然相同,并且包大小增加(我预计将删除多余的库或其他东西)。
答案 0 :(得分:1)
你是如何生成依赖图的?
顺便说一句,您的软件包看起来很好,除非您在分发的代码中包含了您所依赖的软件包(prop-types
和detect-browser
)。
为了避免您在webpack配置文件中将这些库标记为external
。像:
externals: {
react: 'react',
prop-types: 'prop-types',
detect-browser: 'detect-browser',
}
最后(个人)注意事项:尝试捆绑您的库Rollup。 :)