直接安装
使用 npm 直接安装模块,默认是生产环境,包名会注册到 package.json
里的 dependencies 中,且会把包安装到项目 node_modules 文件夹里面:
npm install module_name
其中 install 可以简写为 i
npm i module_name
全局安装
全局安装模块,也就是安装到磁盘用户文件夹中,不会将包名写入项目的 package.json
,也不会在项目 node_modules 目录中保存模块包,但是本地能够直接使用,打包的时候会把相关的全局包打包进去
npm install module_name -g
包名写入配置文件
生产环境
将包名注册在 package.json
文件的 dependencies 中,生产环境(也就是打包上线)依然存在,例如 axios,express,react 等
npm install module_name --save
--save
可以简写为 -S
npm install module_name -S
开发环境
将包名注册在 package.json
文件的 devDependencies 中,即开发环境,生产环境会忽略这里的模块,常用于调试,错误检查,自动重启等方便开发,例如 babel,less-loader,nodemon 等
npm install module_name --save-dev
--save-dev
可以简写为 -D
npm install module_name -D
根据文件打包安装
那么
npm i
或者npm install
什么时候用?
因为 node_modules 包太大,向 Github 之类的托管平台上传代码的时候都不会上传 node_modules,也就是平时项目中的 .gitignore
中写 node_modules 的原因,只会保留一个 package.json
文件,注明了使用的模块和版本。
在这种项目初始化的时候运行 npm install
就会把 package.json
文件中 dependencies 和 devDependencies 中的包全部安装到项目中,生成 node_modules 包