使用webpack时,有必要区分dependencies和devDependencies吗?
dependencies和devDependencies是npm包中package.json文件中的两个重要属性,作用是区分依赖的环境,即使用devDependencies声明的依赖只会在开发环境下用到,不会打包到最终包里,dependencies同理。
webpack是一个模块打包器,它会以entryPoint声明的文件为入口,查找import语句构建依赖图,无论你的依赖被声明在devDependencies或dependencies中,只要被包含在依赖图中,那么它都会被打包进你的dist中。
所以,使用webpack或vue-cli等工具构建项目时,你可以将依赖都声明在devDependencies或dependencies之下,这不影响你的应用打包结果。
不过一般来说,我更倾向于遵循node的约定,将依赖分开声明,这对于提高项目的可读性是有帮助的。