問題:在編譯nodejs項目的時候,使用npm install命令安裝npm依賴包特別容易出現node-sass包安裝失敗,報npm ERR! Failed at the node-sass@XXX postinstall script類似的錯誤。
原因:npm 安裝 node-sass 依賴時,會從 github.com 上下載 .node 文件。由於國內網絡環境的問題,這個下載時間可能會很長,甚至導致超時失敗。
解決方法一、手動下載binding.node文件
1、執行npm uninstall node-sass卸載失敗的安裝
2、在https://github.com/sass/node-sass/releases頁面下載binding.node文件。Linux系統下載對應Linux版,Windows系統下載Windows版,並將文件放到 /home/當前用戶/.npm/node-sass/4.12.0/下(如果沒有目錄需新建)。
3、重新安裝node-sass包,如果使用root用戶,需要增加--unsafe-perm參數。參考命令如下:
#npm install node-sass@4.12.0--unsafe-perm-D
解決方法二、設置環境變量安裝
1、執行npm uninstall node-sass卸載失敗的安裝
2、編輯.npmrc文件,手動添加SASS_BINARY_SITE=http://npm.taobao.org/mirrors/node-sass配置或者執行npm config set sass_binary_site https://npm.taobao.org/mirrors/node-sass/命令自動添加配置。
3、執行npm install node-sass重新安裝。
參考資料:https://www.jianshu.com/p/58dabd9d1d23
