npm和yarn安装node-sass的问题

node-sass

npm 安装 node-sass 依赖时,会从 github.com 上下载 .node 文件。由于国内网络环境的问题,这个下载时间可能会很长,甚至导致超时失败。
这是使用 sass 的同学可能都会遇到的郁闷的问题。

npm下载

解决方法如下

1

直接切换淘宝源

局部设置
npm i node-sass --sass_binary_site=https://npm.taobao.org/mirrors/node-sass/
全局设置
npm config set sass_binary_site https://npm.taobao.org/mirrors/node-sass/

2

增加配置文件.npmrc

sass_binary_site=https://npm.taobao.org/mirrors/node-sass/
registry=https://registry.npm.taobao.org

以上方法就可以下载成功了

yarn下载

yarn的下载要比npm艰难多了
上诉切换还是会失败的
需要自己手动下载包才行

当我们yarn下载node-sass时,会报错。这个主要是解析的时候出错了。
我们查看node_modulesnode-sassvendor路径下的文件
我这边假设是win32-x64-57
而文件夹内部却是空的
这里面的文件就是下载了,最后到时解析失败。我们就需要手动去下载这个文件
https://github.com/sass/node-...
在上述地址找到win32-x64-57版本的binding.node;即win32-x64-57_binding.node
下载下来。
那么接下来我们需要去找到yarn的缓存地址,yarn下载的时候都是优先查看缓存
我们可以通过

yarn cash dir

我们可以找到对应的缓存地址
我这边是

C:\Users\xxx\AppData\Local\Yarn\Cache\v1

然后在这里面找到对应的node-sass
我们可以看到内部没有vendor文件,那么把刚才的vendor文件夹都复制进来,并且将win32-x64-57_binding.node改名为binding.node放到win32-x64-57文件夹下面,这是再次去下载就可以下载成功了

相关推荐