node版本问题导致node-sass安装报python错误
一、发现问题
我之前创建了一个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管理员模式下执行,我在非管理员用户下操作不成功
到此结束,最后运行项目