node.js 包管理工具介绍 (npm与Yarn详细说明)

一、什么是包?

包(package)代表了一组特定功能的源码集合

二、什么是包管理工具?

也就是管理包的应用软件,可以对包进行下载、更新、删除、上传等操作。借助包管理工具,可以快速开发项目提升开发效率。包管理工具是一个通用概念,很多编程工具都有包管理工具,它极为重要

三、常用的包管理工具?

npm、yarn、cnpm...

其中Node.js 的包管理工具主要是 npm(Node Package Manager)和 yarn。这些工具使得开发者能够轻松地安装、更新、删除和管理 Node.js 项目中的依赖包。

(3-1) npm

1》介绍:

npm 是 Node.js 默认的包管理工具,随着 Node.js 的安装而自动安装。它提供了一个庞大的公共仓库(registry),其中包含了成千上万的开源 Node.js 包。

2》主要功能和操作:

安装依赖:使用 npm install <package-name> 命令可以安装一个特定的包。

安装所有依赖:在项目的根目录下运行 npm install 命令,会根据 package.json 文件中的依赖列表安装所有必要的包。

更新依赖:使用 npm update <package-name> 命令可以更新一个特定的包,而 npm update 命令会更新所有已安装的包。

删除依赖:使用 npm uninstall <package-name> 命令可以删除一个包。

查看已安装的包:使用 npm list 命令可以查看当前项目中已安装的包列表。

package.json 文件:

npm 的一个重要概念是 package.json 文件。这个文件描述了项目的元数据和依赖信息。通过编辑这个文件,你可以指定项目的名称、版本、描述、作者、依赖等信息。

(3-2) Yarn

1》介绍:

Yarn 是另一个流行的 Node.js 包管理工具,由 Facebook 开发。它的目标是解决 npm 在一些场景中的问题,比如性能和安全问题。

2》主要功能和操作:

安装依赖:使用 yarn add <package-name> 命令可以安装一个特定的包。

安装所有依赖:在项目的根目录下运行 yarn install 命令,会根据 package.json 文件中的依赖列表安装所有必要的包。

更新依赖:使用 yarn upgrade <package-name> 命令可以更新一个特定的包,而 yarn upgrade 命令会更新所有已安装的包。

删除依赖:使用 yarn remove <package-name> 命令可以删除一个包。

查看已安装的包:使用 yarn list 命令可以查看当前项目中已安装的包列表。

Yarn 也有一个名为 yarn.lock 的文件,它类似于 npm 的 package-lock.json 文件,用于锁定依赖的版本,确保在不同环境中安装相同版本的依赖。

(3-3)npm和yarn总结:

npm 和 Yarn 都是功能强大的 Node.js 包管理工具,它们使得开发者能够轻松地管理项目的依赖。npm 作为 Node.js 的默认包管理工具,使用广泛,但 Yarn 在一些方面提供了更好的性能和安全性。选择哪个工具取决于你的具体需求和偏好。

四、npm的安装

npm是Node.js默认的包管理工具。

Node.js在安装时会自动安装npm。如果已装好node.js可以直接使用npm。

npm是否安装检测方法:打开命令提示符,输入npm -v来查看版本号。若版本号显示则安装成功

相关推荐
ncj3934379061 小时前
vscode中对node项目进行断点调试
vscode·node.js
abigale033 小时前
webpack+vite前端构建工具 -11实战中的配置技巧
前端·webpack·node.js
墨菲安全13 小时前
NPM组件 betsson 等窃取主机敏感信息
前端·npm·node.js·软件供应链安全·主机信息窃取·npm组件投毒
csdn_aspnet1 天前
Node.js 使用 WebSockets 和 Socket.IO 实现实时聊天应用程序
node.js
whhhhhhhhhw1 天前
Node.js核心API(fs篇)
node.js
聪聪的学习笔记1 天前
【1】确认安装 Node.js 和 npm版本号
前端·npm·node.js
GDAL1 天前
Node.js v22.5+ 官方 SQLite 模块全解析:从入门到实战
数据库·sqlite·node.js
RunsenLIu2 天前
基于Vue.js + Node.js + MySQL实现的图书销售管理系统
vue.js·mysql·node.js
Allen_zx2 天前
Elpis - 基于 Koa + Vue3 的企业级全栈应用框架
node.js
鹏程2 天前
局域网下五子棋,html+node.js实现
node.js·html