node-sass 安装失败问题解决方案
当我们去github上找到一个前端项目,公式项目整合、调试等场景里面样式使用sass、scss来编写的时候,我们就必不可少的回去安装sass、node-sass、sass-loader三件套。以前node版本在12.x的时候还好,切使用npm来安装node-sass除了慢点基本没啥问题,而现如今node14.x都出来了,webpack4.x+的时代,在安装node-sass的时候总是会报错,总是会出现gyp ERR!...
之类的错误,大多都是**__binding.node
这个玩意在墙外,下载慢或者是与node版本不合。
我在解决这个问题的时候在网上看了很多方案,我这里整合一下,我会把我解决这个问题的方案放在首位显示。
- 根据错误提示去下载**__binding.node这个文件。
下载地址:https://github.com/sass/node-sass/releases
**代表系统的位数和版本、根据提示的错误去下载。我这里是提示win32-x64-83_binding.node
这个文件编译错误,于是找到该文件并下载下来,然后修改仓库引用地址:
*C:\WorkSpace\Maven\win32-x64-83_binding.node换成你存放set SASS_BINARY_PATH=C:\WorkSpace\Maven\win32-x64-83_binding.node
**__binding.node
的路径即可。
敲回车,然后使用安装依赖
或yarn add node-sass -D
npm install node-sass -D
这里建议:之前安装失败的node-sass移除,如果不知道安装了些什么那就直接将node_modules整个文件夹删除掉,然后修改长裤应用地址,重新安装一遍依赖。
- 使用淘宝镜像
此方法我也才用过,我没有成功,而且下载很慢,再说了,我是用的是yarn下载依赖,使用的就是淘宝镜像也不成功,此方法待考量。
也可以全局使用淘宝镜像npm i node-sass --sass_binary_site=https://npm.taobao.org/mirrors/node-sass/ # 也可以设置系统环境变量的方式。示例 # linux、mac 下 SASS_BINARY_SITE=https://npm.taobao.org/mirrors/node-sass/ npm install node-sass # window 下 set SASS_BINARY_SITE=https://npm.taobao.org/mirrors/node-sass/ && npm install node-sass
cnpm
安装,个人习惯不喜欢cnpm
,我以前使用过此方法解决过node-sass问题,的确有效,但是cnpm的其他包容易出现一些奇奇怪怪的问题,现在放弃使用了。cnpm install node-sass
- 在项目根目录创建.npmrc文件,复制下面代码到该文件。
phantomjs_cdnurl=http://cnpmjs.org/downloads sass_binary_site=https://npm.taobao.org/mirrors/node-sass/ registry=https://registry.npm.taobao.org
希望以上的方法对你有所帮助!