npm官网:https://www.npmjs.com/
npm全命令:https://docs.npmjs.com/cli/v7/commands
1. 概念
什么是包?
包(package)是一个或多个js模块的集合,它们共同完成某一类功能
可以简单的认为每一个工程就是一个包
有些包是为了给别人用的,这种包也叫第三方库什么是包管理器?
包管理器是一个管理包的工具,前端常见的包管理器有npm、yarn、cnpm、pnpm等
包管理器具备以下能力:- 让开发者可以轻松的下载包
- 让开发者可以轻松的升级和卸载包
- 能够自动管理包的依赖
什么是cli
cli是一个命令行工具,它提供一个终端命令,通过该命令可以完成一些功能
2. Node查找包的顺序
1 | require("a") |
- 查找是否有内置模块a
- 查找当前目录的node_modules中是否有a
- 依次查找上级目录的node_modules中是否有a,直到根目录
3. 配置源
由于npm是国外的,所以资源都是存储在国外的服务器上,国内下载使用不方便,需要修改数据源,使用国内的服务器;
3-1. 查看源
1 | npm config get registry |
3-2. 配置淘宝镜像源
1 | npm config set registry https://registry.npm.taobao.org |
3-3. 配置官方源
1 | npm config set registry https://registry.npmjs.org/ |
4. 初始化
1 | npm init # 初始化工程,帮助生成 package.json 文件 |
5. package.json
1 | { |
6. 安装
6-1. 本地安装
会将包下载到当前命令行所在目录的node_modules中
绝大部分安装都使用本地安装
安装普通依赖(最常见)
1 | 下面的 install 可以替换为 i |
若仅作为开发依赖,则添加参数 -D
1 | 下面的 install 可以替换为 i |
若要还原安装
1 | 下面的 install 可以替换为 i |
6-2. 全局安装
会将包下载到一个全局的位置
只有需要使用某个全局命令时,才需要进行全局安装
注意: 小写 -g
,区分大小写;
1 | 下面的 install 可以替换为 i |
7. 卸载
7-1. 本地卸载
卸载本地的安装包
1 | 下面的 uninstall 均可替换为 un |
7-2. 全局卸载
卸载全局的安装包
1 | 下面的 uninstall 均可替换为 un |
8. 查看包信息
8-1. 查看包所有的版本
1 | view 可以替换为 v |
9. 脚本【package.json】
在 package.json
文件中,有个一个 scripts
属性,它的值是一个对象,对象的属性名就是脚本名,值为脚本内容;可以通过 npm run 脚本名称
执行改脚本;
注意:如果脚本名称为 start
则可以省略 run
;
package.json:
1 | { |
终端:
1 | 运行index.js文件 |
__END__