美文网首页
node-sass报错处理

node-sass报错处理

作者: 零点知晨 | 来源:发表于2020-12-15 10:19 被阅读0次

新装完系统每次跑项目基本都会遇到node-sass的问题,记录备用

背景

node-sass需要访问墙外的一些资源,正常情况npm install会失败

解决办法

不一定每一个都适用,看自己具体情况

一、vpn

有vpn的可以直接开vpn这个直接跑,一点问题没有。没有多余的操作,非常简单。但是我的ssr不知道为什么就是不行。有可能是全局模式也无法限制terminal走代理吧

二、淘宝镜像 - 三种办法

1.指定npm的仓库到淘宝镜像
在当前项目中新建 .npmrc文件。

```
registry=https://registry.npm.taobao.org
sass_binary_site=https://npm.taobao.org/mirrors/node-sass/
```
这样当前的项目使用npm安装依赖时都可以用镜像的资源

2.通过terminal全局指定

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

这样配置是全局的会在c:->user>xxx(用户名) 新建 .npmrc文件。内容和上一步一样。也是可以手动去创建的

3.cnpm直接使用淘宝镜像
有人说直接用 npm i -g cnpm 以后用cnpm从来没遇到过。我试过了,不好使呢。。。

cnpm会遇到命令行无法运行的问题

set-ExecutionPolicy RemoteSigned 设置为A
get-ExecutionPolicy  查看是否设置成功

三、手动去添加node-sass

这个添加可需要注意。文件名,路径啥的都不能错。网上有些路径给的不好使vener/win32-x64-83/binding.node,可能是改找的规则了吧。

Cached binary found at C:\Users\xxgcx\AppData\Roaming\npm-cache\node-sass\4.13.0\win32-x64-83_binding.node

node-sass下载不成功会去找缓存,github下载最新的版本,找到路径添加对应的文件就可以。
问题来了,用哪个版本呢?node -p "[process.platform,process.arch,process.versions.modules].join('-')" 看一下terminal输出的。我的是win32-x64-83所以就去下载这个。Mac os的应该是darwin-x64-64

使用yarn

npm i -g yarn
其实和npm基本一样的。但是貌似不是这里的问题。用yarn也解决不了,yarn也需要手动添加win32-x64-83/binding.node。yarn的路径 和npm不一样C:\Users\xxgcx\AppData\Local/Yarn/Cache/v6/

相关文章

网友评论

      本文标题:node-sass报错处理

      本文链接:https://www.haomeiwen.com/subject/xibigktx.html