基础复习:前端项目中dependencies和devDependencies的区别,以及npm安装的简写
项目package.json截图
文字描述
dependencies:项目依赖。在编码阶段和呈现页面阶段都需要的,也就是说,项目依赖即在开发环境中,又在生产环境中。如js框架vue、页面路由vue-router,各种ui框架antd、element-ui、vant等。
devDependencies: 开发依赖。仅仅在写代码过程中需要使用,比如css预处理器、vue-cli脚手架、eslint之类。
后面部分为–save -dev 的情况会使得下载的插件放在package.json文件的devDpendencies对象里面
后面部分为–save的情况会使得下载的插件放在package.json文件的dependencies对象里面
区别
devDependencies下的依赖包,只是我们在本地或开发坏境下运行代码所依赖的,若发到线上,其实就不需要devDependencies下的所有依赖包;(比如各种loader,babel全家桶及各种webpack的插件等)只用于开发环境,不用于生产环境,因此不需要打包;
dependencies是我们线上(生产坏境)下所要依赖的包,比如vue,我们线上时必须要使用的,所以要放在dependencies下;dependencies依赖的包不仅开发环境能使用,生产环境也能使用
个人理解
1.dependencies是项目的必须依赖。(无论什么环境,都需要的依赖)
2.devDependencies仅仅是可选依赖。
包的安装命令
1.`npm i xxx@xxx`和`npm i xxx@xxx -S`(`npm i xxx@xxx--save`) 是安装必须依赖
2.`npm i xxx -D`(`npm i xxx@xxx--save-dev`) 是安装开发依赖
更多npm 命令简写
npm install本身有一个别名,即npm i,可以使用这种缩写方式来运行命令,打到简化的效果。
以下为指定的一些命令行参数的缩写方式:
**-g**
--global,缩写为-g,表示安装包时,视作全局的包。安装之后的包将位于系统预设的目录之下。
**-S**
--save,缩写为-S,表示安装的包将写入package.json里面的dependencies。
**-D**
--save-dev,缩写为-D,表示将安装的包将写入packege.json里面的devDependencies。
**-O**
--save-optional缩写为-O,表示将安装的包将写入packege.json里面的optionalDependencies。
**-E**
--save-exact缩写为-E,表示安装的包的版本是精确指定的。
**-B**
--save-bundle缩写为-B,表示将安装的包将写入packege.json里面的bundleDependencies。