npm 是Node.js的包管理工具(package manager),npm 由三个独立的部分组成: 网站(开发者查找包,设置参数以及管理npm的主要途径) 注册表(保存每个包(package)的信息) 命令行工具(通过命令行或终端运行。开发者通过 CLI 与 npm 打交道)。
npm常用操作命令
- npm search 搜索包
- npm install 安装包 or npm i 包名
- npm ls 查看已经安装的依赖包
- npm uninstall 卸载包
- npm run 查看 package.json中有哪些 npm script命令
- npm update 更新包
注: jquery@2.2.4 执行 npm update之后,只会更新jquery@2.x.x以后的小版本,不会直接更新到3.x.x版本, 如需下载3.x版本重新安装需要的版本即可
本地项目安装包命令
- npm i
安装在当前项目目录(node_modules)下,根据模块访问规则,当前项目以及子项目可访问。一般用于安装项目独立使用的包。
全局安装包命令
- npm i -g
安装在 npm 指定的全局目录下,通过全局模块访问机制可以在全局范围内访问。一般用于安装工具性质的包。
一次安装多个模块:
npm i gulp-pug gulp-debug gulp-sass
更新依赖包
- 检测依赖包 npm i npm-check-updates -g
- 查看哪些依赖包需要更新 ncu
- 更新package.json文件中的依赖包为最新版本
- 安装最新的依赖包 npm i
- npm outdate 查看安装包有没有版本更新
查看包信息
- npm view vue 或 npm v vue 查看安装包所有信息
- npm v vue version 查看包最新版本
- npm view versions --json 查看指定包的所有版本
npm root -g 查看全局包的安装路径
npm init 或 npm init –yes 自动创建package.json文件
npm config get prefix 获取全局安装的默认目录
npm config set key value 设置npm镜像和node-sass
- npm config set registry https://registry.npm.taobao.org
- npm config set SASS_BINARY https:npm.taobao.org/mirrors/node-sass/
npm i -g与 npm i -S 或 npm i -D 区别
- npm i xxx -g 全局安装
- npm i xxx -S 是 npm i xxx --save的简写 安装的插件会在package.json文件中写入到dependencies对象里面去,dependencies需要发布到生产环境.(生产依赖/项目依赖包) 开发时使用,上线还需要
- npm i xxx -D 是 npm i xxx --save-dev的简写 安装的插件会在package.json文件中写入到devDependencies对象里面去,devDependencies里面的插件只用于开发环境不用于生产环境.(开发依赖) 开发时需要,线上不需要
发布自己的模块包
package.json文件 项目(模块、包)说明配置文件,该文件描述了当前包的信息,只有拥有package.json文件的项目才可以被发布。
自动创建package.json npm init / npm init --yes
package.jsonname:包名称,必填version:版本,必填,格式 x.x.xmain : 包的入口主文件scripts:自定义脚本,通过 npm run 脚本名称即可执行脚本定义的命令dependencies:生产环境下需要使用的依赖包devDependencies:只做开发环境(测试环境)下使用的依赖包
- 注册 npmjs.org 账号
- 登录 npm adduser / npm login 要切回到npm源
- 发布 npm publish 查看发布的npm包
快速删除node_modules依赖或文件
- npm i rimraf -g 全局安装 rimraf 模块
- rimraf node_modules