前端開發工作中經常負責多個項目(新項目、多年的老項目及團隊合作項目),經常會遇到npm install安裝依賴包或者啟動本地服務時依賴報錯的情況,大多數是因為NodeJS和npm與依賴之間版本的問題,此時需要卸載並安裝對應版本的NodeJS和npm管理工具,使得開發工作極其不便。
nvm(NodeJS Version Management)完美解決困擾,nvm是nodejs版本管理工具,使用命令行方式安裝切換不同版本的nodejs。
nodejs提供了一個n模塊,可用於管理nodejs版本,但它不適用於windows系統,且只是作為nodejs的一個模塊存在,而nvm是獨立於nodejs和npm的一個工具。
下載安裝nvm:
從github(https://github.com/coreybutler/nvm-windows/releases)上下載最新版本nvm安裝包,推薦下載nvm-setup.zip,綠色免安裝版nvm-noinstall.zip在使用時需要進行配置,比較麻煩不方便,所以不推薦。
安裝之前最好先卸載本地的nodejs和npm及相關文件,在安裝nvm時也會自動幫助我們清理。
運行nvm-setup.exe文件根據步驟選擇nvm和nodejs的安裝路徑,推薦也最好放在根目錄下(eg:D:\)且nvm和nodejs平級目錄,注意路徑中不能包含中文或空格,不然在nvm use命令會報亂碼錯誤。
安裝完成后運行cmd,輸入nvm查看是否成功,安裝成功會顯示nvm版本。
查看系統環境變量
使用nvm安裝管理nodejs:
重點:使用管理員身份運行cmd,不然在nvm use node_version時會報亂碼錯誤。
如果遇到node不是內部或外部命令的錯誤,那是因為沒執行nvm use命令,執行nvm use version命令后就可以正常使用node和npm了。
命令介紹:
nvm list available:可選參數available顯示所有可下載版本,缺省時顯示本地安裝的所有版本及當前使用的node版本
nvm install 14.18.1:安裝14.18.1版本的nodejs及對應的npm,會在nvm的安裝目錄下生成對應版本的nodejs文件夾,可選參數arch指定安裝系統位數(32位/64位,默認根據系統位數)
nvm use 14.18.1:使用指定版本的nodejs和對應npm,如果不使用管理員身份運行cmd,此時此處會出現exit status 1: ......的亂碼錯誤,可選參數arch指定安裝系統位數(32位/64位,默認根據系統位數)
nvm uninstall 14.18.1:卸載對應版本的nodejs,nvm的安裝目錄中對應文件夾會去掉
nvm arch:顯示node運行系統環境32位或64位
nvm on:開啟nodejs版本管理
nvm off:關閉nodejs版本管理
nvm proxy [url]:設置下載代理,可選參數url,不加參數顯示當前的代理,url為none則清除當前代理
nvm node_mirror [url]:設置node鏡像,默認為https://nodejs.org/dist/,設置后可在nvm安裝目錄下settings.txt文件查看
nvm npm_mirror [url]:設置npm鏡像,默認為https://github.com/npm/cli/archive/,同理設置后可在nvm安裝目錄下settings.txt文件查看
nvm root [path]:設置存儲nodejs的目錄,默認在nvm的安裝目錄下
nvm version:查看nvm版本