当我使用webpack时,将任何模块放入package.json的dependencies中是否有意义?
当我想要开发一个包时,我使用“git clone ”然后“npm install”,然后npm从package.json文件安装所有依赖项和devDependencies,这是有意义的。
当我是最终用户,我只想在我的项目中安装一些包到我的node_modules中,我运行“npm install package-name”,然后npm仅安装其依赖项的package-name,并且这也是有意义的。
但是,当我使用webpack时,将任何模块放入dependencies中是否有意义?Webpack将捆绑所有依赖项到例如bundle.js中,因此对我来说,没有必要安装依赖项(因为它们已包含在bundle.js文件中)。
假设我将所有必要的模块放入my-project的devDependencies中(保持dependencies对象为空),然后使用webpack进行打包和发布:
- 开发人员用户将使用“git clone ”,然后运行“npm install”,然后npm将从package.json安装devDependencies(并省略空的dependencies对象),然后准备好进行开发。 - 最终用户将使用“npm install my-project”,然后npm将安装my-project,不安装devDependencies(因为这是用于生产),也不安装dependencies(因为package.json中的dependencies对象保持为空)。将任何内容放入dependencies将使依赖项加倍:两个依赖项都将被安装,并且相同的依赖项将在bundle.js文件中可用。
我是正确的吗?
当我想要开发一个包时,我使用“git clone ”然后“npm install”,然后npm从package.json文件安装所有依赖项和devDependencies,这是有意义的。
当我是最终用户,我只想在我的项目中安装一些包到我的node_modules中,我运行“npm install package-name”,然后npm仅安装其依赖项的package-name,并且这也是有意义的。
但是,当我使用webpack时,将任何模块放入dependencies中是否有意义?Webpack将捆绑所有依赖项到例如bundle.js中,因此对我来说,没有必要安装依赖项(因为它们已包含在bundle.js文件中)。
假设我将所有必要的模块放入my-project的devDependencies中(保持dependencies对象为空),然后使用webpack进行打包和发布:
- 开发人员用户将使用“git clone ”,然后运行“npm install”,然后npm将从package.json安装devDependencies(并省略空的dependencies对象),然后准备好进行开发。 - 最终用户将使用“npm install my-project”,然后npm将安装my-project,不安装devDependencies(因为这是用于生产),也不安装dependencies(因为package.json中的dependencies对象保持为空)。将任何内容放入dependencies将使依赖项加倍:两个依赖项都将被安装,并且相同的依赖项将在bundle.js文件中可用。
我是正确的吗?