nrm
大约 2 分钟
一个帮助你管理npm镜像源的工具,助你省心切换镜像源。
安装
npm install nrm -g
基本命令
nrm -V 查看安装版本,也看查看是否安装成功
nrm -V
可能会报错
D:\nvm\v16.16.0\node_modules\nrm\cli.js:9
const open = require('open');
^
Error [ERR_REQUIRE_ESM]: require() of ES Module D:\nvm\v16.16.0\node_modules\nrm\node_modules\open\index.js from D:\nvm\v16.16.0\node_modules\nrm\cli.js not supported.
Instead change the require of index.js in D:\nvm\v16.16.0\node_modules\nrm\cli.js to a dynamic import() which is available in all CommonJS modules.
at Object.<anonymous> (D:\nvm\v16.16.0\node_modules\nrm\cli.js:9:14) {
code: 'ERR_REQUIRE_ESM'
}
解决办法: 命令行终端输入:npm i nrm -g open@8.4.2 --save
,安装完成后再输入nrm -V
就可显示版本号
nrm ls 列举可使用的镜像源
$ 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/
nrm use 使用某一镜像源
$ nrm use cnpm //switch registry to cnpm
Registry has been set to: http://r.cnpmjs.org/
more command
Usage: nrm [options] [command]
Commands:
ls List all the registries
current Show current registry name
use <registry> Change registry to registry
add <registry> <url> [home] Add one custom registry
login <registry> [value] Set authorize information for a registry with a base64 encoded string or username and pasword
-a --always-auth Set is always auth
-u --username <username> Your user name for this registry
-p --password <password> Your password for this registry
-e --email <email> Your email for this registry
set-hosted-repo <registry> <value> Set hosted npm repository for a custom registry to publish packages
set-scope <scopeName> <value> Associating a scope with a registry
del-scope <scopeName> Remove a scope
set <registryName> Set custom registry attribute
-a --attr <attr> Set custorm registry attribute
-v --value <value> Set custorm registry value
del <registry> Delete one custom registry
rename <registryName> <newName> Set custom registry name
home <registry> [browser] Open the homepage of registry with optional browser
publish [<tarball>|<folder>] Publish package to current registry if current registry is a custom registry. The field 'repository' of current custom registry is required running this command. If you're not using custom registry, this command will run npm publish directly
-t --tag [tag] Add tag
-a --access <public|restricted> Set access
-o --otp [otpcode] Set otpcode
-dr --dry-run Set is dry run
test [registry] Show the response time for one or all registries
help Print this help
Options:
-h --help output usage information
-V --version output the version number
补充
也有免安装一步到位的切换镜像源命令
# 使用淘宝镜像源
npx nrm use taobao
# 使用npm官方镜像源
npx nrm use npm
# 查看当前使用的镜像源
npm config get registry
可使用的镜像源: