npm install运行报错npm ERR! gyp ERR! not ok问题解决

执行npm install的时候报错:

html 复制代码
npm ERR! path D:..\node_modules\\**node-sass**
npm ERR! command failed
...

npm ERR! gyp ERR! node -v v20.11.0
npm ERR! gyp ERR! node-gyp -v v3.8.0
npm ERR! gyp ERR! not ok


根据报错信息,看出时node-sass运行出现问题
解决:

1.查看当前环境node版本
html 复制代码
node -v

我这里是20.11.0

2.在package.json中查看node-sass的版本:
2.1package.json中有node-sass

我这里node-sass的版本是4.14.4

根据下图查看node和node-sass版本是否匹配

如果node和node-sass版本不符合,可以降低node版本,或者升高node-sass版本

2.2 如果pakage.json中没有node-sass,node-sass是由其他包引入的,比如sass-loader,直接升级node-sass会报错

ModuleBuildError: Module build failed (from ./node_modules/sass-loader/dist/cjs.js):

Error: Node Sass version 7.0.3 is incompatible with ^4.0.0.

上面的错误指出当前的sass-loader版本依赖的node-sass为^4.0.0版本,与当前安装的7.0.3版本不相容。
解决

方法1.降低node版本与对应的node-sass匹配

方法2.升级sass-loader,让其需要的node-sass版本升级到node需要的对应node-sass版本上。注意,如果使用这种方式,需要选择合适的版本,既要保证node-sass版本与node匹配,又要尽可能少的影响其他使用到的依赖的版本。

我这里将sass-loader改成了10.5.2版本,注意如果sass-loader版本大于等于11.0.0时webpack需要为5.0.0版本以上。

相关推荐
Joy T7 天前
【Web3】深度解析 NFT 跨链智能合约开发:原生资产与衍生包装合约架构实战
git·架构·web3·区块链·node·智能合约·hardhat
Joy T16 天前
【Web3】告别Remix:基于Hardhat的智能合约工程化构建与实战
git·web3·node·智能合约·hardhat
风清云淡_A18 天前
【NODE】docker部署后端java项目实战基础版
docker·node
风清云淡_A21 天前
【NODE】vite项目的前后端手动部署流程
node
坐吃山猪23 天前
NodeJS极简后端服务
node·express
Jane-lan23 天前
NVM安装以及可能的坑
前端·node·nvm
风清云淡_A23 天前
【NODE】Linux centos上安装nodejs方法教程
node
蜡台1 个月前
Node 版本管理器NVM 安装配置和使用
前端·javascript·vue.js·node·nvm
刘一说1 个月前
告别“版本漂移”:彻底解决 macOS 上 NVM 默认 Node 版本失效的难题
macos·node·nvm
蜡台1 个月前
Node Vue 项目开发常见问题解决
前端·javascript·vue.js·git·node