Webpack:还需要 package.json 'devDependencies' 吗?
Webpack: Is package.json 'devDependencies' needed anymore?
我在玩 create-react-app
并发现它确实将所有包放在正常 "dependencies" 下。我构建了该应用程序,发现 'build' 文件夹大小为 2.66 MB。
然后我手动将生产中不需要的包移动到"devDependencies"并重新构建,但是'build'文件夹大小仍然是2.66 MB。
webpack.prod.js 文件中是否有一些逻辑,即使所有包都列在 "dependencies" 下,它也知道需要什么?
如果是这样,在 package.json 中使用 "devDependencies" 是否还有一些好处?
当 webpack 构建你的项目时,它会确定你的项目所依赖的一切,从入口文件开始,然后进行组合、丑化等等,而忽略其他一切。
例如,如果 index.js
是您的入口文件并且它依赖于 moment.js
,则 moment.js
将包含在您的构建中,无论它是依赖项还是 devDependency。
原因是npm区分依赖和devDependencies,而webpack只区分需要和不需要的。
If so, is there still some benefits using "devDependencies" in package.json?
我仍然使用 devDependencies,但只是作为订购我的 package.json 的一种方式,但是当使用诸如 webpack 之类的工具来构建产品时,一切都可以安全地处于依赖关系中 site/app
我在玩 create-react-app
并发现它确实将所有包放在正常 "dependencies" 下。我构建了该应用程序,发现 'build' 文件夹大小为 2.66 MB。
然后我手动将生产中不需要的包移动到"devDependencies"并重新构建,但是'build'文件夹大小仍然是2.66 MB。
webpack.prod.js 文件中是否有一些逻辑,即使所有包都列在 "dependencies" 下,它也知道需要什么?
如果是这样,在 package.json 中使用 "devDependencies" 是否还有一些好处?
当 webpack 构建你的项目时,它会确定你的项目所依赖的一切,从入口文件开始,然后进行组合、丑化等等,而忽略其他一切。
例如,如果 index.js
是您的入口文件并且它依赖于 moment.js
,则 moment.js
将包含在您的构建中,无论它是依赖项还是 devDependency。
原因是npm区分依赖和devDependencies,而webpack只区分需要和不需要的。
If so, is there still some benefits using "devDependencies" in package.json?
我仍然使用 devDependencies,但只是作为订购我的 package.json 的一种方式,但是当使用诸如 webpack 之类的工具来构建产品时,一切都可以安全地处于依赖关系中 site/app