【node】关于npm、yarn、npx的区别与使用

文章目录

npm (Node Package Manager):

  • 用途: npm 是 Node.js 官方提供的包管理工具,用于安装、管理和分享 JavaScript 代码包。
  • 安装依赖: 可以通过 npm install 安装项目依赖,例如:npm install package-name
  • 运行脚本: 可以在 package.json 文件中定义脚本,通过 npm run script-name 执行脚本。
  • 版本管理: 提供版本管理,可以指定安装的包的版本。
  • 全局安装: 通过 -g 参数可以进行全局安装,使包成为全局可执行命令。

安装依赖

html 复制代码
npm install package-name

运行脚本

html 复制代码
npm run start

npx:

  • 用途: npx 是随同 npm 5.2.0+ 版本发布的工具,用于执行项目依赖中的可执行文件,无需显式安装到全局或本地。
  • 临时安装: npx 会在执行命令时,临时安装依赖包,而不需要将其添加到项目的依赖中。
  • 版本检查: 如果本地项目中存在相应版本的依赖,npx 将使用项目中的版本执行,否则会下载并执行最新版本。

执行项目依赖中的命令

cmd 复制代码
npx package-name

yarn:

  • 用途: yarn 是一个 JavaScript 包管理工具,用于替代 npm 进行包的管理。
  • 性能优化: 具有更快的安装速度、离线安装、并行下载等性能优化。
  • 版本锁定: 通过 yarn.lock 文件可以锁定依赖包的版本,确保团队成员使用相同的版本。
  • 自动清理: 自动清理不再使用的依赖。

安装依赖

cmd 复制代码
yarn add package-name

选择使用:
npm vs. yarn: npm 和 yarn 都是常见的包管理工具,选择取决于个人或团队的偏好。在大多数情况下,两者的功能基本相似,可以根据具体需求进行选择。

npx 的使用场景: npx 通常用于执行项目依赖中的可执行文件,适用于需要一次性执行某个命令而无需全局安装的情况。

总体来说,这些工具在 JavaScript 生态系统中起到了关键作用,提供了便捷的包管理和执行脚本的方式。

eg.使用npx yarn install 的作用

npx yarn install 的作用是使用 npx 命令来运行 yarn install,实际上它等同于直接运行 yarn install。让我们分解一下这个命令:

npx: 用于执行可执行文件,通常是在项目依赖中找到的可执行文件。如果没有全局安装 yarn,npx 会查找项目依赖中的 yarn 并执行。

yarn install: 是 yarn 命令的一部分,用于安装项目的依赖。

因此,npx yarn install 的效果与直接运行 yarn install 是一样的。通常情况下,你可以直接使用 yarn install 来安装项目依赖,而不需要额外使用 npx。

如果项目中已经存在 yarn 的二进制可执行文件,你也可以直接运行:

cmd 复制代码
yarn install

或者如果你希望确保使用项目中的 yarn,可以使用 npx:

cmd 复制代码
npx yarn install

这对于确保使用项目中的本地 yarn 版本而不是全局版本可能是有用的。

相关推荐
晴殇i7 分钟前
CSS 相对颜色:告别 180 个颜色变量的设计系统噩梦
前端·css
MegatronKing8 分钟前
Reqable 3.0版本云同步的实践过程
前端·后端·测试
李剑一9 分钟前
我用Trae生成了一个Echarts 3D柱状图的Demo
前端·vue.js·trae
Crystal32810 分钟前
3D实战案例(飞行的火箭/创建3D导航/翻书效果/创建长方体/环环相扣效果)
前端·css
6***x54510 分钟前
前端组件库发展趋势,原子化CSS会成为主流吗
前端·css
00后程序员张11 分钟前
接口调试从入门到精通,Fiddler抓包工具、代理配置与HTTPS抓包实战技巧
前端·ios·小程序·https·fiddler·uni-app·webview
快手技术13 分钟前
闪耀NeurIPS 2025!快手13篇论文入选,Spotlight 成果跻身前三!
前端·后端
一 乐21 分钟前
宠物猫店管理|宠物店管理|基于Java+vue的宠物猫店管理管理系统(源码+数据库+文档)
java·前端·数据库·vue.js·后端·宠物管理
熊猫比分管理员36 分钟前
【全栈源码解决方案】Vue+Java四端齐全,一周交付可运行项目!
java·前端·vue.js
o***741737 分钟前
【Nginx 】Nginx 部署前端 vue 项目
前端·vue.js·nginx