原因分析
- sass的编译语言比较特殊,需要下载对应版本的编译器才能编译
- 安装 node-sass 时会从 github.com 上下载一个 binding.node 文件,在国内网络不稳定,推荐使用使用淘宝镜像去下载这个文件:
npm set sass_binary_site https://npm.taobao.org/mirrors/node-sass
,然后重新执行npm i node-sass sass-loader -D
- node版本与node-sass版本不匹配时,也会导致 binding.node 下载不下来,从而无法编译
- 对应版本参考官网:
https://www.npmjs.com/package/node-sass
NodeJS Supported node-sass version Node Module Node 20 9.0+ 115 Node 19 8.0+ 111 Node 18 8.0+ 108 Node 17 7.0+, <8.0 102 Node 16 6.0+ 93 Node 15 5.0+, <7.0 88 Node 14 4.14+, <9.0 83 N
- 对应版本参考官网: