为什么会出现这个问题呢?
是因为我要跑一个vue3+ts+vite的项目,提示我node版本太低了,所以我就去升级了node版本 16.14.0 最新的。
然后我跑公司的老项目的时候,就出现了标题所写的错误,还有一大片的报错,和参考链接发的图片那样,就是node版本和node-sass 不匹配的问题。
无效解决
看网上的大多数解决方案都是先卸载 node-sass 再安装,其实根本行不通。还有文章说安装或卸载不了 是npm的原因,要使用淘宝镜像, 但是依旧不行。
解决办法:
就是先将node 版本 改为我之前的10.几的版本,然后再去下载匹配的node-sass二进制文件, 具体我使用的node版本 和node-sass版本和参考文章的链接里面是一样的
-下载 node-sass 二进制 https://github.com/sass/node-sass
-下载时,需要注意以下你的 node 版本以及对应的 NODE_MODULE_VERSION 版本,版本映射可以对照这个(https://nodejs.org/en/download/releases/)。
-再就是设置环境 SASS_BINARY_PATH=D:\nodesass\win32-x64-64_binding.node
注意路径是反斜线,参考作者没有改过来
需要注意的地方是
在你卸载掉之前的node之后,重新安装你需要的node版本之后, 运行npm i 的时候,会出现这样的错误:npm does not support Node.js v10.14.1,就是npm和node版本不匹配的原因,也就是你虽然把node卸载了,但是npm还是之前的,所以要把npm也要删除干净。所以你把node卸载之后,还要找到npm 和npm-cache 这两个文件夹删掉, 我的npm是在 C:\Users\CDN\AppData\Roaming 这个路径里面,npm-cache是在 C:\Users\CDN\AppData\Local这个路径里面,可能每个人的路径会有一点不一样,把这两个删除之后,再重新安装你需要的node版本,再执行npm i就可以:
image.png
网友评论