node-sass@4.14.1报错解决
The_more_more 人气:0问题描述
起因我在逛一些项目的时候,输入npm i
全安装文件所需的依赖的时候,博主是使用sass去书写的,使用的是node-sass@4.14.1和sass-loader@7.3.1的版本的,安装的时候老是出现错误
gyp ERR! stack Error: Can't find Python executable "python", you can set the PYTHON env variable. gyp ERR! stack at PythonFinder.failNoPython (C:\Users\Admin\Desktop\github-demo\xiaochen\pupu_blog-master\pupu_blog-master\vue-blog-web\node_modules\node-gyp\lib\configure.js:484:19) gyp ERR! stack at PythonFinder.<anonymous> (C:\Users\Admin\Desktop\github-demo\xiaochen\pupu_blog-master\pupu_blog-master\vue-blog-web\node_modules\node-gyp\lib\configure.js:509:16) gyp ERR! stack at callback (C:\Users\Admin\Desktop\github-demo\xiaochen\pupu_blog-master\pupu_blog-master\vue-blog-web\node_modules\graceful-fs\polyfills.js:299:20) gyp ERR! stack at FSReqCallback.oncomplete (node:fs:198:21)
这里提示和Python有一点点关系,起初猜想是sass程序可能和python有一些数据的连接啥的,去查了很多的关于这个报错的信息,也没有找到什么,后面还有一个报错
npm ERR! code ELIFECYCLE npm ERR! errno 1 npm ERR! Exit status 1 npm ERR! npm ERR! Failed at the node-sass@4.14.1 postinstall script. npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
这里提示node-sass@4.14.1 postinstall脚本失败,我猜想是版本导致的,就去查阅一些相关的版本,结果还是解决不了
解决方案:
后来我去查了相关解决这个问题的一些文章解说,
有的解决方法是:
npm config set sass_binary_site=https://npm.taobao.org/mirrors/node-sass
去改变他的下载的地址,然后再npm install node-sass
来安装,我试了好几次还是解决不了问题。
还有的是重新下载,把package-lock.json
和node_modules
文件夹删除,然后执行npm i
来把所需的包重新再下一遍,我也试了一试,结果还是解决不了问题。其余的方法还有就是配置一些其他的下载途径,npm有个包nrm,可以方便的切换镜像源,输入npm i nrm -g
输入,nrm ls
可以查看需要选择的镜像源,输入nrm use taobao
可以直接切换到淘宝镜像,这种方法和第一种有点相似,再去安装npm install node-sass
,我发现还是不行。
如果看到这里,你的问题以及解决了,那肯定就是我的方法不对
最后的方法我只能降级node去安装,终于,在降级后就可以安装了,现在的node最新是v16,要支配node-sass@4.14.1
可以把node降级到v12,至于怎么降级,可以使用nvm去降级,这个很方便去改变node的版本,但我还没有怎么学会使用。
附上github关于nvm
的地址https://github.com/nvm-sh/nvm/blob/master/README.md
虽然我不会使用,但是我会直接改版本,附上node的各个版本下载地址:https://nodejs.org/dist/
找到自己安装node的地址,全部删除,替换下载好的node,解压就好了,将文件重启,再运行npm install node-sass
就可以下载了。
+ node-sass@4.14.1 added 102 packages from 110 contributors in 17.834s 48 packages are looking for funding run `npm fund` for details
总结
加载全部内容