全網最全解決node-sass安裝失敗總結

vipbic發表於2021-09-26

問題描述?

執行

npm i node-sass -D

關鍵詞描述:

tunneling socket could not be established, cause=getaddrinfo ENOTFOUND 49402 // 這個埠號每個人出現的可能不一樣
Error: Could not find any Python installation to use ...

圖描述

如果遇到這些問題,那麼在這裡應該就能找到答案

最終報的錯誤資訊

為什麼有Python的提示報錯

原因:提示沒有安裝python、build失敗,如果拉取binding.node失敗,node-sass會嘗試在本地編譯binding.node,過程就需要用到python

為什麼會下載失敗

在執行npm install node-sass的時候,控制檯會看到正在從github下載一個win32-x64-72_binding.node的檔案,這是一個二進位制檔案,並不存在npm倉庫,而是直接從github下載,下載非常慢,如果本地沒有牆過,失敗的機率會比較大

解決下載慢5種方法

  1. 所有的依賴都設定淘寶映象

    npm config set registry https://registry.npm.taobao.org/
  2. 只對node-sass設定拉取地址

    npm install node-sass --sass-binary-site=https://npm.taobao.org/mirrors/node-sass

    3.在npm config設定

    npm config set sass_binary_site https://npm.taobao.org/mirrors/node-sass

    4.在package.json

    "nodeSassConfig": {
        "binarySite": "https://npm.taobao.org/mirrors/node-sass"
    },

    5.在專案目錄下新建.npmrc檔案

    registry=https://registry.npm.taobao.org/
    # 設定私有服
    @pm:registry=http://192.168.1.200:8081/repository/npm/
    # 比如安裝
    npm install @pm/axios -S
    npm install @pm/vue -S

以上沒有解決,解決埠號問題

我的電腦所報的是:49402

檢視npm配置

npm config list -l // 檢視npm所有配置

檢查裡面是否代理欄位,如有刪除

npm config delete proxy
npm config delete https-proxy

檢查環境變數

在這裡發現了一個49402埠,把它刪掉

? 清除環境變數後注意,電腦重啟一次

重啟之後

到這裡做的以上這些檢查,或者配置,我已經解決node-sass安裝問題

補充

下載檔案至本地方法

目前驗證失敗

就是先從https://npm.taobao.org/mirrors/node-sass
選取一個node-sass版本先下載下來,然後在本地npm chche目錄中,比如我的電腦的目錄

C:\Users\YXS\AppData\Roaming\npm-cache\node-sass

然後設定

npm config set sass-binary-site C:/Users/YXS/AppData/Roaming/npm-cache/node-sass
# 檢視是否生效
npm config list -l

然後安裝

npm i node-sass@4.10.0 -D

Windows系作業系統

管理員許可權執行以下命令

npm install --global --production windows-build-tools

目前驗證失敗

臨時CMD代理

以後如果需要臨時給 cmd 設定代理可以使用以下 命令列,這種環境變數只會持續到cmd視窗關閉,不是系統環境變數

set http_proxy=http://127.0.0.1:1080
set https_proxy=http://127.0.0.1:1080

更有用的知識

https://blog.csdn.net/weixin_38384296/article/details/116403848

相關文章