起因
今天淘宝上来个兄弟要毕业项目作为求职的筹码,我就开开森森的打开尘封已久的react项目大集合。
第一步,安装依赖吧,boom! 安装失败,npm换yarn还是boom! 反正试了很多次,都是卡在了node-sass这个依赖上。我尼玛……
解决
- 首先报错两个地方,第一个是download失败,好我就把
users/.npmrc
文件加入了下面这句话
sass_binary_site=https://npm.taobao.org/mirrors/node-sass
为的是让管理器去淘宝镜像里下载它,默认是从github下载,那指腚是下不下来,我搭了梯子都不行。
这句话可以使用命令加入到配置文件里:
npm config set SASS_BINARY_SITE=https://npm.taobao.org/mirrors/node-sass
当然,如果你的npm下载本身也慢,还可以把下载地址也改成淘宝的。npm config set registry https://registry.npm.taobao.org
- 然后下载好了,但是呢下载的是二进制的数据文件,需要nodejs去编译,然后又boom~!
然后我打开了npmjs.com
网站搜索框输入node-sass
,然后人家赫然提示我。
Below is a quick guide for minimum and maximum supported versions of node-sass:
歌词大意是:每个node-sass版本对应不同版本的nodejs,因为啥呢,因为二进制的node-sass文件需要被nodejs编译。
好,我在下面的表里找到了对应的nodejs版本,然后使用nvm下载好后,再重新npm i
就ok了。
NodeJS | Supported node-sass version | Node Module |
---|---|---|
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+ | 83 |
Node 13 | 4.13+, <5.0 | 79 |
Node 12 | 4.12+, <8.0 | 72 |
Node 11 | 4.10+, <5.0 | 67 |
Node 10 | 4.9+, <6.0 | 64 |
Node 8 | 4.5.3+, <5.0 | 57 |
Node <8 | <5.0 | <57 |