我正在玩create-react-app
并发现它确实将所有包放在正常的#34;依赖关系"之下。我构建了应用程序并发现了“构建”#39;文件夹大小为2.66 MB。
然后我手动将生产中不需要的包移到" devDependencies"并且再次建造,但是建造'文件夹大小仍然是2.66 MB。
webpack.prod.js文件中是否有一些逻辑,即使所有软件包都列在"依赖项"
下,它也知道需要什么。如果是这样,使用" devDependencies"还有一些好处吗?在package.json?
答案 0 :(得分:8)
当webpack构建项目时,它会确定项目所依赖的所有内容,从入口文件开始,然后组合,uglifies等,并忽略其他所有内容。
例如,如果index.js
是您的输入文件,并且它取决于moment.js
,则moment.js
将包含在您的构建中,无论它是依赖项还是devDependency。
这样做的原因是npm区分依赖关系和devDependencies,而webpack只区分需要的和不需要的。
如果是这样,使用" devDependencies"还有一些好处吗?在package.json?
我仍然使用devDependencies,但仅作为对package.json进行排序的方法,但是当使用webpack等工具构建生产站点/ app时,一切都可以安全地依赖于