node-sass下载不了的问题,终于搞定了

      换了工作,新的环境,网络安全却管得很严。之前可以用node.js 轻松搞定的npm package,却怎么也搞不定。原因就卡在node-sass这里……


node-sass下载不了的问题,终于搞定了_第1张图片

原因很简单,下载node-sass需要访问国外的服务器,网络问题。

这个问题,不管是用哪个自动化工具,gulp还是webpack,都需要npm install 来下载依赖包。只要网络不行,都会出现这个问题。

然后用通用方法解决。

方法一:

      首先就是网络上用的最多的方法,使用国内镜像。首推淘宝镜像:(windows平台)

npm install -g cnpm --registry=https://registry.npm.taobao.org

这是一个完整npmjs.org镜像,你可以用此代替官方版本(只读),同步频率目前为10分钟一次以保证尽量与官方服务同步。

而且下载速度很快,之前用这个链接的时候一点问题都没有,npm 无缝切换到 cnpm,很方便。


现在发现不行了,因为公司安全防范,

把这个淘宝的镜像地址给封掉了,封掉了,封掉了。。

一直用这个方法的我也开始尝试各种方法折腾,也快折腾得疯掉了……

没办法,折腾了很久才发现,原来还有其他的镜像地址,咦~~~不错,新大陆,有种瞬间就能解决问题的感觉。。

方法二:

//npm 国内镜像源

*   npm -----  https://registry.npmjs.org/

    cnpm ----  http://r.cnpmjs.org/

    taobao --  https://registry.npm.taobao.org/

    nj ------  https://registry.nodejitsu.com/

    rednpm --  http://registry.mirror.cqupt.edu.cn

    skimdb --  https://skimdb.npmjs.com/registry

镜像源的使用方法网上有三种,大家自己选择使用,请移步查看具体方法:http://yijiebuyi.com/blog/b12eac891cdc5f0dff127ae18dc386d4.html

有一个方法是在.npmrc文件中加入一行配置镜像地址的:

sass_binary_site=http://r.cnpmjs.org/


可是,试了以后才发现,有好多一样不能访问,最后终于发现一个可以用的,赶紧的:

npm install node-sass --registry=http://r.cnpmjs.org/

可是……不勒个是吧,还是报错~

认真查看teminal进度信息才发现,原来,虽然地址用了国内的镜像源,最终却还是要去访问github上的资源:


node-sass下载不了的问题,终于搞定了_第2张图片

这不是坑的吗~明知是网络问题才用国内镜像的,这样可好,跟没用国内镜像没啥两样。(淘宝镜像例外)


不过有地址就好说,貌似看到过网上有人说可以把node-sass包down到本地,然后修改配置就可以的。浏览器下载通常都比 node 下载更快更稳定

好的,ok,又有希望了~!!!!

方法三:

第一步

把这个地址拷贝下来,然后让其他同事帮忙下载好,然后共享给我

https://github.com/sass/node-sass/releases/download/v4.5.2/win32-x64-48_binding.node

P.S.1   请各位原谅,用了这个曲折的方法,没办法,自己的网络实在不能成功下载,虽然只有2.2MB

P.S.2   每个人的node-sass版本会不一样,我这里的是4.5.2,请大家各自修改版本号。


node-sass下载不了的问题,终于搞定了_第3张图片

第二步

然后呢,参考这个说明进行配置:http://www.th7.cn/web/html-css/201607/176503.shtml

把文件存到一个稳定的路径,并复制路径;

在 ~/.npmrc下面新增一行,新增 sass_binary_path项并填入刚才的路径,比如

sass_binary_path=C:\Program Files\nodejs\node_modules\npm\win32-x64-48_binding.node

最后再去项目目录下

npm i     //  或者直接npm install

好了,终于大功告成!!!

大家有没有搞定呢~~嘻嘻~


node-sass下载不了的问题,终于搞定了_第4张图片

你可能感兴趣的:(node-sass下载不了的问题,终于搞定了)