了解Node和npm
目录
1. 什么是 npm?
npm(Node Package Manager)是 Node.js 的默认包管理器,用于管理 JavaScript 项目的依赖关系和工具。它是全球最大的软件注册中心,托管了数百万个开源代码包,使开发者能够轻松共享和重用代码。
2. npm有哪些使用场景?
- 安装第三方库:例如 Express、React、Lodash 等。
- 管理项目依赖:自动跟踪并安装项目所需的包及其版本。
- 运行自定义脚本:如启动服务器、执行测试或构建代码。
- 发布自己的包:将代码发布到 npm 仓库供他人使用。
- 统一开发环境:通过配置文件确保团队成员使用相同的依赖版本。
在管理项目依赖方面,npm就类似前端的maven,或者是Node环境下的maven,使用的依赖配置文件名称和作用范围都不同,但是在管理依赖方面,都有类似的目的,例如保证依赖版本统一,自动化等。
3. npm有什么核心特性?
- 集中化仓库:访问海量开源包,支持公共和私有托管。
- 语义化版本控制:使用
^
(允许次版本更新)、~
(允许修订版本更新)等符号管理依赖版本。 - 依赖分层管理:
- 本地依赖(默认):安装到项目的
node_modules
目录,仅限当前项目使用。 - 全局依赖(
-g
):安装到系统目录,供所有项目使用(如 CLI 工具)。
- 本地依赖(默认):安装到项目的
- 脚本自动化:通过
package.json
定义start
、test
等快捷命令。 - 安全审计:
npm audit
检查依赖漏洞,npm audit fix
自动修复。 - 工作区支持:管理多包项目(monorepo),优化依赖共享和本地链接。
- 锁文件机制:
package-lock.json
确保依赖树的一致性,避免版本冲突。
4.npm的常用命令有那些?
命令 | 作用 |
---|---|
npm init |
初始化项目,生成 package.json 文件(-y 快速跳过提问) |
npm install <包名> |
安装包到本地依赖(可简写为 npm i ) |
npm install -g <包名> |
全局安装包(如 npm i -g nodemon ) |
npm install --save-dev <包名> |
安装为开发依赖(如测试工具,-D 简写) |
npm uninstall <包名> |