解决 npm ERR! node-sass 和 gyp ERR! node-gyp 报错问题

前言

在对一个项目进行npm i的时候 一直报错

npm ERR! code 1 npm ERR! path D:....\node-sass npm ERR! command failed 显示没有办法安装这个node-sass包

包兼容性

我电脑中默认使用的16的node版本,查找本地项目中这个包的版本和官方对于这个包的兼容,发现需要14版本才能兼容它,可以查看你们项目中node-sass对应的node版本

node-sass包原地址:https://www.npmjs.com/package/node-sass

解决办法

切换node版本

首先使用nvm下载node14版本,然后切换

javascript 复制代码
nvm install v14.18.3  //下载14版本node
nvm use v14.18.3//切换14版本node

里面有对对应的node-sass中的所有版本,因为我的是16node版本,原则上来说可以在本地全局安装6版本的node-sass包,这样就可以实现兼容,但是下载后发现还是不行。所以尝试利用nvm包管理器下载node14版本,然后全局安装node-sass4.14.1版本

删除本地node_module

注意: 不要在项目中安装,在cmd中全局安装这个包,不然还是会报错!全局安装前需要确保当前项目安装的包已经在本地删除,全局下载node-sass之后,再在项目中npm i

ps:如果看到这的人没有下载过nvm推荐你们一定要去下载!使用非常方便,可以很好的解决兼容,特别是工作以后,经常会有各种版本的项目。

其他解决办法

在我查询这个问题的解决办法的时候,我看其他博客说是python没下载,没有python,但是对我在这个项目没什么用,下载之后没有什么变化,还是报错,只是报错有些许不一样了而已

nvm安装

1.下载安装nvm:GitCode - 全球开发者的开源社区,开源代码托管平台

2.安装nvm后在命令窗口输入命令 nvm,出现一堆提示文字后成功。

3.执行安装node版本命令 安装指定版本(以14.18.3为例)

nvm install v14.18.3

一些nvm常用命令:

javascript 复制代码
nvm list 查看已有版本
nvm use v14.18.3 切换到指定版本(以14.18.3为例)
nvm uninstall 14.18.3 卸载指定版本
相关推荐
西西学代码3 分钟前
flutter---进度条
前端·javascript·flutter
时间的情敌18 分钟前
Vue3 和 Vue2 的核心区别
前端·javascript·vue.js
533_19 分钟前
[antv x6] 限制节点/边是否可以移动,移动时返回父节点,限制节点的移动范围
前端
步步为营DotNet22 分钟前
深入理解ASP.NET Core Middleware:构建高效Web应用的管道基石
前端·后端·asp.net
|晴 天|23 分钟前
微前端架构入门:从概念到落地实践
前端·架构
悟能不能悟30 分钟前
vue项目,url访问不了,用route-link跳过去就可以访问,为什么
前端·javascript·vue.js
程序媛_MISS_zhang_011031 分钟前
APP中列表到详情,详情返回列表时候,返回定位到之前查看详情那条数据
前端·javascript·vue.js
还有多远.31 分钟前
前端部署后自动检测更新
前端·javascript·vue.js
爱吃无爪鱼33 分钟前
02-前端开发核心概念完全指南
css·vue.js·前端框架·npm·node.js·sass