[node]nvs使用的注意事項

原文地址html

在使用nvs以前一直使用的是nvm windows這款工具,用着也挺爽的,前不久看到科普文,因此也想試試,試了以後在windows上翻車了,因此這裏記錄一下。先看科普文:使用 nvs 管理本地 Node.js 版本node

windows下安裝

推薦cmd手動安裝步驟git

git bash環境配置

# ~/.bashrc 添加下面的環境配置
# 根據你安裝的路徑選擇$ProgramData 或者 $LOCALAPPDATA
export NVS_HOME=$LOCALAPPDATA/nvs
. $NVS_HOME/nvs.sh
複製代碼

git bash中nvs報錯找不到命令

nvs v1.5.1使用MSI或者choco install nvs安裝以後能夠正常使用,可是會缺失nvs.sh,若是你在git bash下使用nvs會出現找不到命令,後續版本會修復這個問題。推薦cmd手動安裝步驟則沒有這個問題。github

nvsnpm命令不生效

安裝以後在新的終端窗口中nvsnpm不生效時,注意註銷從新登陸,或者從新啓動一次系統。shell

注意: 尤爲是第一次使用nvs link以後,發現nodenpm不會生效,最好註銷從新登陸。npm

共用npm全局模塊

首先不建議你們跨版本公用全局模塊,除非你知道你在幹什麼。windows

科普文:使用 nvs 管理本地 Node.js 版本 這裏有介紹怎麼設置。bash

# 使用git bash建立
mkdir -p ~/.npm-global
npm config set prefix ~/.npm-global
複製代碼
# .bashrc中添加全局模塊的路徑
# 注意~/.npm-global/ 不是~/.npm-global/bin
# windows 10下沒有bin文件夾,因此最好檢查下。。。
echo "export PATH=~/.npm-global/:$PATH" >> ~/.bashrc

source ~/.bashrc
複製代碼

注意: (nvs v1.5.1)ide

  1. 注意檢查全局模塊的配置路徑,是否正確(坑)

cmdpower shell下添加全局模塊環境變量

經過以上的配置在git bash下,全局安裝的npm模塊工做的很正常,可是在cmd或者power shell會發現找不到命令,嘗試過添加到系統變量,可是依然不生效,最後提個issues,官方給瞭解決方案工具

# 設置完若是不生效,新開一個命令行窗口嘗試(若是不行,註銷從新登陸)
setx PATH "%PATH%;%USERPROFILE%\.npm-global"
複製代碼

設置以後:cmder, cmd , powershell, cygwin統統生效了

注意:

  1. nvs use 是改變當前shell窗口的node版本,不是全局環境(nvm的區別)
  2. nvs link是改變全局環境的node版本

參考

科普文:使用 nvs 管理本地 Node.js 版本

從 nvm 遷移到 nvs

cmder using .bashrc

VS Code Support - Node Version Switcher

xizhibei Node Version Manager

Windows: when use npm prefix share global modules fails

setx

ss64 setx

相關文章
相關標籤/搜索