一文詳解NPM如何換源
前言
做開發(fā),最怕的就是下載 404 的問題。
對于 NPM,下載完后不換源的話,下載依賴包就相當(dāng)?shù)穆?,最后超時下載失敗也經(jīng)常發(fā)生。
這時候我們就要改一下 NPM 的 registry 配置,換成國內(nèi)的鏡像源。
查看源
先看看源指向哪里:
npm config get registry
默認(rèn)是指向 https://registry.npmjs.org/,也就是官方源。
更換源
國內(nèi)源有很多,我這里用淘寶源吧。畢竟是大公司,會比較穩(wěn)定。
npm config set registry https://registry.npmmirror.com/
一些文章還是寫著舊的淘寶 NPM 鏡像
registry.npm.taobao.org,但它已于 2022 年 05 月 31 日 廢棄,讀者需要更換為新的registry.npmmirror.com源。
這個配置會持久化保存到 ~/.npmrc 文件中,你也可以通過手動改該文件來修改配置。
nrm
因為換源要記域名很麻煩,還要手打較長的命令,所以我們可以考慮安裝 nrm 包
npm i -g nrm
nrm 其實就是 NPM registry manager,管理 NPM 源泉的簡單命令行工具。
令人悲傷的是,如果用國外源安裝 nrm,有可能會因為超時而安裝失敗。
通過 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 <源的名稱>,則會配置為對應(yīng)的 registry url。
$ nrm use taobao Registry has been set to: https://registry.npmmirror.com/
nrm 工具的子命令不只是這些,比如可以在列表中新增自己的私有源。不過基本來說,也就前面提到的這兩個最常用。具體可以閱讀它的文檔。
話說它好像有點(diǎn)小 bug。作者其實并沒有好好維護(hù),曾經(jīng)有一段時間 npm 升級,nrm 沒有更近,導(dǎo)致不可使用,后來是修好了。
補(bǔ)充:npm更改默認(rèn)下載位置
為了更好的管理npm包,所以最好是自己更改默認(rèn)下載位置后來管理。
npm包的下載方式有兩種,一種是當(dāng)前目錄安裝,另一種是安裝在全局中。
可以通過在下載是加上-g來安裝為全局包。
默認(rèn)安裝位置在C:\Users\xxx\AppData\Roaming\npm,默認(rèn)的緩存位置在C:\Users\xxx\AppData\Roaming\npm_cache,可以通過下面的命令來查看:
npm root -g //或者 npm config list
創(chuàng)建一個npm包的下載位置以及緩存位置,E:/npm/npm_global和E:/npm/npm_cache。
然后執(zhí)行下面的命令:
npm config set prefix "E:/npm/npm_global" npm config set cache "E:/npm/npm_cache"
執(zhí)行完之后,默認(rèn)的目錄就更改了。
默認(rèn)目錄更改后,命令執(zhí)行的目錄還沒有更改,如果不更改,下載后的包使用會找不到命令,這個時候需要添加環(huán)境變量,把npm_global的路徑添加的環(huán)境變量path中去。
結(jié)尾
作為一名成熟的國內(nèi)程序員,麻溜地?fù)Q源已經(jīng)是一種基本操作了。
到此這篇關(guān)于一文詳解NPM如何換源的文章就介紹到這了,更多相關(guān)NPM換源內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Node.js中使用socket創(chuàng)建私聊和公聊聊天室
這篇文章主要介紹了Node.js中使用socket創(chuàng)建私聊和公聊聊天室的相關(guān)資料,需要的朋友可以參考下2015-11-11

