報error:0308010C:digital envelope routines::unsupported錯--nodejs版本過高(nvm安裝(更換)不同版本nodejs)

YI羊發表於2024-10-24

最近小編入職實習,執行(npm run dev)前端專案時報error:0308010C:digital envelope routines::unsupported的錯,一查發現原來是nodejs版本過高,與專案不匹配。接下來介紹更換nodejs版本的方法。

第一種:官網下載

  • 透過nodejs官網下載安裝 ,但有個缺陷,不同版本的nodejs無法順利的切換

第二種:NVM安裝

一、下載nvm安裝包

1、下載地址

github上下載最新版本:https://github.com/coreybutler/nvm-windows/releases

2、選擇接收後,自定義安裝路徑,後面nodejs可以採用預設,我是放在nvm下


3、安裝成功標誌:命令列:nvm

二、配置淘寶映象

由於nvm預設的下載地址http://nodejs.org/dist/是外國外伺服器,速度非常慢,因而可以切換到淘寶的映象,下載速度會快很多。

配置方法

  • 開啟nvm安裝路徑,預設是D:\nvm\nvm\setting.txt,配置如下內容
root: D:\nvm\nvm
path: D:\nvm\nodejs
arch: 64 
proxy: none
node_mirror: https://npmmirror.com/mirrors/node/
npm_mirror: https://npmmirror.com/mirrors/npm/

三、安裝node

1、nvm安裝命令:

nvm install version
version就是要安裝的nodejs版本,官網可以查詢到,比如我要更換的版本是16.13.1,nvm install 16.13.1

顯示Downloading,請等待,切勿關閉命令列,需要等其下載完!

四、切換nodejs版本

1、檢視所有版本

nvm list

2、切換命令

nvm use version
例如我想用16.13.0,則nvm use 16.13.0
版本號前出現*代表為當前使用的nodejs版本

五、配置nvm環境變數

1、環境變數地址

我的電腦->右鍵->屬性->高階系統設定->環境變數

2、配置使用者變數

NVM_HOME = D:\nvm\nvm          
NVM_SYMLINK = D:\nvm\nodejs
Path = %NVM_HOME%;%NVM_SYMLINK%


六、測試node npm是否安裝成功

分別輸入如下命令

node
npm -v



(這裡如果node可以,但npm不行,試試執行npm uninstall version,再執行npm -v)

七、配置全域性變數

設定npm全域性路徑,預設情況下我們npm安裝在nvm下對應的nodejs版本下,如果切換了nodejs版本,全域性安裝的npm包將會失效。

1、設定全域性目錄

  • 執行如下指令
npm config set cache  D:\softInstall\nvm\nvm\node_cache
npm config set prefix  D:\softInstall\nvm\nvm\node_global
  • 設定全域性使用者環境變數,這樣node_global下的包都能全域性呼叫了
    新建NPM_GLOBA=D:\softInstall\nvm\nvm\node_global,並新增到path %NPM_GLOBAL%

最後執行nvm use version選擇你的目標版本
然後 nvm ls 版本號前面標*,則選擇成功。
ok,到這裡nvm切換nodejs版本號就結束啦,總的來說,兩種方法都可以,個人覺得對於有版本要求的專案,使用nvm比較方便。

相關文章