解决npm install报错: No module named gyp

今天运行一个以前vue项目,启动时报错如下:

ERROR Failed to compile with 1 error上午10:19:33

error in ./src/App.vue?vue&type=style&index=0&lang=scss&

Syntax Error: Error: Missing binding D:\javacode\Springboot-MiMall-RSA\VueFront\node_modules\_node-sass@4.14.1@nod e-sass\vendor\win32-x64-83\binding.node

Node Sass could not find a binding for your current environment: Windows 64-bit with Node.js 14.x

Found bindings for the following environments:

  • Windows 64-bit with Node.js 12.x

This usually happens because your environment has changed since running `npm install`.

Run `npm rebuild node-sass` to download the binding for your current environment.

大致意思是:因为我把node 12升级成了14, Node Sass库的兼容性出问题了。

我当时没多想,就把node_modules目录删除了,重新运行npm install,结果报错:

No module named gyp

网上查了一些资料说解决办法如下:

1. 指定python2.7路径:npm config set python python2.7

  1. 运行:npm install --no-optional

以上参考:https://spin.atomicobject.com/2019/03/27/node-gyp-windows/

但是两个方法都试过了,全部无效。

后来在一篇文章:node-sass,sass-loader,node-gyp,node报错,版本对应问题

找到解决办法: 原来node版本跟node-sass有对应关系:

我之前的node-sass版本是4.12.0,把它修改成4.14.1 ,然后重新npm install就解决问题了

此时我突然想起我启动时第一次的报错:

RSA\VueFront\node_modules\_node-sass@4.14.1@nod e-sass\vendor\win32-x64-83\binding.node

Node Sass could not find a binding for your current environment: Windows 64-bit with Node.js 14.x

Found bindings for the following environments:

  • Windows 64-bit with Node.js 12.x

This usually happens because your environment has changed since running `npm install`.

Run `npm rebuild node-sass` to download the binding for your current environment.

上面的提示其实写清楚了需要node-sass@4.14.1来匹配Node.js 14.x,建议修复命令:npm rebuild node-sass来修复。

我在想如果一开始我就运行:npm rebuild node-sass 这跟命令,也许问题就解决了

相关推荐
fastjson_2 天前
Hadoop之Yarn
大数据·hadoop·npm
晓得迷路了2 天前
栗子前端技术周刊第 141 期 - Next.js 16.3、npm 安全事件、2026 CSS 现状调查报告结果...
前端·javascript·npm
周小董2 天前
[1367]npm 安装 canvas 报错 node-gyp ERR
前端·npm·node.js
MartinYeung54 天前
npm爆发大规模供应链攻击 蠕虫污染 2000+ 个包版本: 深度技术剖析
前端·npm·node.js
shawxlee6 天前
vue3+elementplus+sass/scss安装配置教程:使用svg图标、引入外部字体、定义变量模块、修改组件样式、一键切换主题等
vue·sass·svg·字体·element·scss·主题样式
无责任此方_修行中7 天前
换个版本号就能升级?可没那简单:pnpm 11 升级踩坑记
javascript·后端·npm
leslie1189 天前
npm常用命令
前端·npm
不在逃避q11 天前
Trae/Vs Code/Cursor命令行无法跑npm命令
前端·arcgis·npm
半句唐诗11 天前
我是如何通过 Access Token 成功发布第一个 npm 包的
前端·npm·node.js
NutShell Wang12 天前
零依赖架构实战:451个HTML文件如何用63KB平均体积交付3584个交互模块
前端·人工智能·arcgis·npm·开源·html·vibe coding