一文彻底弄懂npm、cnpm、npx、nrm

18 篇文章 0 订阅

NPM&CNPM

npm是随同NodeJS一起安装的包管理工具;
因为npm安装插件是从国外服务器下载,受网络影响大,可能出现异常,所以我们乐于分享的淘宝团队干了这事。即cnpm,这是一个完整 npmjs.org 镜像,即淘宝镜像,你可以用此代替官方版本,同步频率目前为 10分钟 。”,

// cnpm下载方式1
npm install -g cnpm
// 使用淘宝镜像方式2来安装cnpm,注意淘宝镜像源已切换新域名
npm install -g cnpm --registry=https://registry.npmmirror.com/

两者之间只是 node 中包管理器的。cnpm是个中国版的npm,是淘宝定制的 cnpm 命令行工具代替默认的 npm

当然我的的npm也可以设置镜像源,npm默认的镜像源为 https://registry.npmjs.org/

// npn设置镜像,手动设置成淘宝镜像,此时npm同cnpm
npm set registry https://registry.npmmirror.com/
// 查看当前镜像源是否设置成功
npm config get registry

那么,问题来了,如果哪天你跑去国外了,淘宝源肯定是用不了的,又要切换回官网源,或者哪天你们公司有自己的私有npm源了,又需要切换成公司的源,这样岂不很麻烦?于是有了NRM

NRM

NRM可以令我们更方便的切换、新增镜像源

  • 安装nrm
npm install -g nrm
  • 查看可选源 星号代表当前使用源
nrm ls
	  npm ---------- https://registry.npmjs.org/
	  yarn --------- https://registry.yarnpkg.com/
	  tencent ------ https://mirrors.cloud.tencent.com/npm/
	  cnpm --------- https://r.cnpmjs.org/
	* taobao ------- https://registry.npmmirror.com/
	  npmMirror ---- https://skimdb.npmjs.com/registry/

应该有不少开发者已经发现,访问淘宝 NPM 已经会自动 301 跳转到 npmmirror.com 新域名,独立注册和备案的域名。
Web 站点:https://npmmirror.com
Registry Endpoint:https://registry.npmmirror.com
随着新的域名已经正式启用,老 http://npm.taobao.org 和 http://registry.npm.taobao.org 域名将于 2022 年 05 月 31 日零时起停止服务。(望周知,转给你的前端小伙伴)

  • 查看当前源
nrm current
  • 切换淘宝镜像源
nrm use taobao
  • 添加源
nrm add <registry> <url>
// 例如nrm add mynpm http://172.168.6.22:8888/npm/
  • 删除源
nrm del <registry>
// 例如nrm del mynpm
  • 测试源速度
nrm test <registry>
例如: nrm test npm 
	npm ------ 1325ms
nrm test taobao
	taobao --- 111ms

NPX

有没有一些场景,我们并不想全局安装管理包,即用即删,最适合强迫症的coder,不用担心长期的污染;
npx 的原理:就是运行的时候,会到node_modules/.bin路径和环境变量$PATH里面,检查命令是否存在。如果不存在即去网络上查找资源,资源使用后立即删除。

例如我们创建react项目,则无需全局安装脚手架,执行一下命令也可以创建react项目,创建后立即删除react脚手架命令;

npx create-react-app my-app
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值