npm(node package manager): node 包管理器,它运行在 node 环境中。
npm 之所以要运行在 node 环境,而不是浏览器环境,根本原因是因为浏览器环境无法提供下载、删除、读取本地文件的功能。而 node 属于服务器环境,没有浏览器的种种限制。
安装
在安装 node 的时候已经同时安装了 npm
可以通过查看 npm 的版本 检查是否安装了 npm
npm -v
或者
npm --version
注意: 像这些带参数的,很多都有简写和全写, 全写 前面是 两个横杠开头, 简写前面是一个横杠。
使用
配置registry
由于 npm 的服务器是在国外,所以下载包的时候比较慢,甚至可能下载不下来
可以通过配置镜像地址,使用国内的镜像源,这样下载就会快一些。
一般使用 淘宝的镜像源
npm config set registry https://registry.npm.taobao.org
查看 registry 镜像地址
npm config get registry
初始化
初始化一个配置文件,用来记录安装的所有包。
npm init [--yes]
npm init [-y]
如果不加 -y
参数, 初始化的时候会一步一步进行询问,加上之后,会自动添加默认配置信息。
安装包
命令
npm install [--global] 包名称
或者
npm i [-g] 包名称
-g
表示全局安装,适合安装一些 CLI 工具, 全局安装的包放置在一个特殊的全局目录,该目录可以通过命令npm config get prefix
查看。
不加 -g
参数,表示本地安装,一般推荐使用此安装方式
例如
npm i jquery // 本地安装 jquery
npm i -g jquery // 全局安装
npm i jquery lodash // 同时安装 jquery lodash
安装生产环境和开发环境的包
## 安装依赖到生产环境
npm i 包名
npm i --save 包名
npm i -S 包名
## 安装依赖到开发环境
npm i --save-dev 包名
npm i -D 包名
安装最新版本
npm install --save-exact 包名
npm install -E 包名
安装指定版本
npm install 包名@版本号
卸载
npm uninstall [-g] 包名
## uninstall aliases: remove, rm, r, un, unlink
例如
npm remove lodash: 卸载本地安装的 lodash 包
npm un -g jquery: 卸载全局安装的 jquery 包
npm 配置
npm的配置可能会对其它命令产生影响
安装好npm之后,最终会产生两个配置文件,一个是用户配置,一个是系统配置,当两个文件的配置项有冲突的时候,用户配置会覆盖系统配置
查询目前生效的各种配置
npm config ls [-l] [--json]
说明:
npm config ls: 查看生效中的配置信息。注意只列举有改动的项
npm config ls -l: 查看所有的配置,包括改动的和默认的,列表形式展示
npm config ls --json: 查看所有的配置,包括改动的和默认的,json格式展示