关于 Nodenode-sass 版本不匹配导致的 Vue 项目装包报错的问题

Posted Alex_996

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了关于 Nodenode-sass 版本不匹配导致的 Vue 项目装包报错的问题相关的知识,希望对你有一定的参考价值。

前几天想把一个老古董的 Vue 项目拿出来跑一下,结果在第一步的npm install的时候就卡住了,一直安装不上,今天正好有时间,研究了一下,发现是 node 版本和 node-sass 版本不匹配导致的。

Error

npm install时的报错:


大概就是一直卡在这,然后过一会就会报错。

Analysis

既然是npm install的时候报错,初步猜测就是包版本不匹配的问题,但是这个项目依赖了十几个包,没法确定是哪个包版本不匹配导致的问题,所以采取逐步安装法,不一下全部npm install,而是一个一个包的安装。

    "dependencies": 
        "@antv/data-set": "^0.11.7",
        "@antv/g2": "^3.5.1",
        "@antv/g6": "^3.8.3",
        "ant-design-vue": "^1.7.2",
        "axios": "^0.21.0",
        "core-js": "^3.6.4",
        "element-ui": "^2.14.1",
        "node-sass": "^5.0.0",
        "sass": "^1.26.9",
        "sass-loader": "^10.1.0",
        "vue": "^2.6.11",
        "vue-contextmenujs": "^1.3.13",
        "vuex": "^3.5.1"
    

这几个包一个一个安装还是挺快的,前面几个都很顺利,几分钟就安装完了,安装到node-sass的时候报错,并且剩下的几个也没问题,so,bug定位完毕!

所以推测是node-sass的版本跟Node的版本不匹配,看了一下,我的 node 版本:v16.13.1,npm 版本:8.1.2,然后百度一下,果然不止我一个人遇到这个问题,找到node-sass的GitHub,果然有Node版本和node-sass的对应表,so,升级一下node-sass的版本就OK了。

以上是关于关于 Nodenode-sass 版本不匹配导致的 Vue 项目装包报错的问题的主要内容,如果未能解决你的问题,请参考以下文章

httpclient与httpcore版本不匹配导致的编译问题

关于输入语句格式化与变量定义类型不匹配导致结果错误

关于输入语句格式化与变量定义类型不匹配导致结果错误

关于输入语句格式化与变量定义类型不匹配导致结果错误

spring boot 2.0.0由于版本不匹配导致的NoSuchMethodError问题解析

spring boot 2.0.0由于版本不匹配导致的NoSuchMethodError问题解析