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来查看版本号。若版本号显示则安装成功

相关推荐
hasty2 小时前
不上传新包,也能改变用户拿到的版本:npm dist-tag 的 OIDC 权限治理
前端·npm·node.js
福兮说13 小时前
前后端算的 MD5、SHA-256 对不上?编码、换行、BOM、HMAC、JSON 顺序,八个原因逐个实测
前端·javascript·node.js·json·哈希算法
lingchen190614 小时前
Node.js的下载安装配置
node.js
LRL_1 天前
【实战指南】Node.js 跨平台依赖下载:如何在 Windows/Linux 环境下互跨下载目标系统的 npm/pnpm 包
linux·windows·node.js
福兮说1 天前
URL 编码的七个坑:c++ 传到后端变空格、%25 套娃、截断 emoji 直接报错
开发语言·前端·javascript·node.js·url
liangshanbo12151 天前
Webpack vs Vite 底层原理高频追问的问题
前端·webpack·node.js
玖石书1 天前
HiSH 通过 apk 安装 Node.js、npm 与 pnpm
npm·node.js·鸿蒙·hish
池塘水悠悠2 天前
nodejs24安装(node.js安装)
node.js
LRL_2 天前
【K8s 存储】Longhorn v1.12.1 离线安装全流程:外网制作离线包 + 内网部署(附踩坑实录)
linux·windows·node.js
Timmy2 天前
前端转全栈笔记:讲框架之前,先把 TypeScript 这关过了
前端·人工智能·node.js