node-sass安装竟然报了python的错
先说最终解决方案
将node换成14版本
声明:个人总结,思路到哪写到哪,不喜请轻喷😂
参考
https://blog.csdn.net/ccm_2354586864
可恶的node-sass让我不得不在周末自愿加班😠
我的node-sass是4.5.0版本
由于我装了python3, 我心里是不愿意再装python2的,以免以后发生其他冲突,于是在网上查找了各种方案,有的说将node-sass换成sass,但由于是很久前的老项目,还有其他库依赖node-sass如sass-loader3.2.0,2.x版本的webpack又依赖该版本的sass-loader,等等,这些插件一环扣一环,如果要更新就得全部更新,很有可能会造成项目出现各种问题,看起来好像陷入了死循环。。。
于是我想起了以前有遇到过node版本不同导致项目环境安装出现问题的经历,想想这是个老项目,也很有可能因为同样的问题导致的报错,于是我抱着死马当活马医的心态查了一下,发现了该版本似乎对应的是v8版本的node
但是nvm安装v8版本的node却失败了,又是一个死胡同。。。
我瞪着node版本的对应表发了半个小时的呆,突然想到既然v8不行,说不定还可以试试其他版本,同是v4版本的node-sass应该有相同和兼容的地方,于是我试了一下v14, 真的安装成功了!
后来在网上也看到了一篇文章,链接见前面参考处,该作者也是用的v14版本,真是的要是能早点看到就好了,也不用自愿加这么久的班😮💨
【小插曲】
项目终于跑通了,结果在发布上线时又报错了,而且看起来是同一个错误。。。
以为是由于生产环境和开发环境的webpack配置不一样导致的,结果核对半天发现没啥区别,还以为又得折腾一天,结果吃完饭回来又突然可以跑通了。
不管怎样能跑就行啊哈哈
晚上出门散步时突然想通了,可能是由于我开了另外一个终端来执行发布,然后nvm默认使用的node版本是16版本的,因此导致又报错了。