一、發現問題
我之前創建了一個vue項目,當時用的node版本是14的(目前最新的是17),運行沒有任何問題。最近換電腦了,裝了穩定版的node 16,然后下載vue項目,執行npm install,結果報如下錯誤:
二、查找問題原因
我對node、node-sass這些並不了解,就百度了一下,有的說原因是node版本和node-sass版本不匹配,需要安裝合適版本的node-sass;有的說是node-sass國內下載環境慢,很大概率裝不成功,要換成淘寶的鏡像;有的說python配置有問題,需要重新配置。。。。。。不多說,以下是我參考的一些帖子(侵刪):
https://blog.csdn.net/weixin_45847735/article/details/122084202;
https://www.jianshu.com/p/6da2170156ee
https://blog.csdn.net/qq_38209578/article/details/121018631;
這些都沒有解決我的問題
最后我想問題應該在node版本和node-sass版本,我node是用的16,node-sass卻是4.14.1
以下是package.json里面。
看node-sass官網的版本對應,我的應該用node-sass 6.0+版本
可以我卻怎么也安裝不了,試了好多種方法,報以下錯誤
三、最終解決方案
使用把node降低版本為14.5.0,然后原項目npm install 就成功了(建議大家各種源還是換成淘寶鏡像,因為我都按照其他帖子修改了)
參考:https://zhuanlan.zhihu.com/p/439571146
因為不同項目創建時,用的node版本不同,所以運行的時候要用各種適合的node版本,為了能夠管理node版本(卸了重裝),可以安裝nvm
參考:https://blog.csdn.net/ujjhuhu/article/details/122364406
https://blog.csdn.net/qq_30376375/article/details/115877446
安裝好后修改成淘寶鏡像,在nvm安裝目錄下的settings里面改,不然npm下載不成功,就沒法用npm了
就是增加兩行:
node_mirror: https://npm.taobao.org/mirrors/node/ npm_mirror: https://npm.taobao.org/mirrors/npm/
之后按照以下方式安裝對應的node版本,並設置為當前使用版本,我安裝的是14.5.0
注意:這個操作是在cmd管理員模式下執行,我在非管理員用戶下操作不成功
到此結束,最后運行項目