升级Node后Sass Loader兼容错误求助
Node升级后sass-loader构建失败:Node Sass环境不兼容问题解决
问题原因
你遇到的错误:
ERROR in ./src/scss/style.scss (./node_modules/css-loader/dist/cjs.js??ref--4-1!./node_modules/postcss-loader/src??postcss!./node_modules/sass-loader/lib/loader.js??ref--4-3!./src/scss/style.scss) Module build failed (from ./node_modules/sass-loader/lib/loader.js): Error: Node Sass does not yet support your current environment: Windows 64-bit with Unsupported runtime (93)
本质是当前安装的node-sass版本与升级后的Node.js版本不兼容。runtime (93)对应Node.js 16.x版本,而你现有的node-sass版本不支持这个Node.js版本。另外需要注意:node-sass已经停止维护,官方不再更新兼容新Node.js版本的迭代。
已尝试方案无效的原因
你执行的npm rebuild node-sass、重装node-sass等操作无效,是因为没有指定与当前Node.js版本兼容的node-sass版本号,npm默认安装的可能还是旧版本,自然无法适配新Node环境。
解决方案
方案1:替换为dart-sass(推荐,长期维护)
dart-sass是sass官方推荐的实现(npm包名为sass),完全兼容现有sass语法,且持续维护,适配最新Node.js版本,替换步骤无需改动旧构建配置:
- 卸载node-sass:
npm uninstall node-sass - 安装dart-sass:
npm install sass --save-dev
sass-loader会自动检测并使用sass替代node-sass,你的旧webpack构建配置可以直接复用,无需调整。
方案2:升级node-sass到兼容版本(临时方案)
如果必须保留node-sass,需安装对应Node.js 16.x的兼容版本(node-sass v7.0.0及以上支持Node.js 16.x):
- 卸载现有node-sass:
npm uninstall node-sass - 安装指定兼容版本:
npm install node-sass@^7.0.0 --save-dev - 执行rebuild确保编译环境适配:
npm rebuild node-sass
内容的提问来源于stack exchange,提问作者влад оптимистов
相关产品推荐
相关产品推荐

