node-sass离线方式安装

概述

在实际的开发工作中,项目是采用前后端分离的。前端项目使用的是Angular框架(不是AngularJS)。通过官方提供的 Angular Cli可以快速创建项目的脚手架。IDE也很好的集成了Angular Cli,开发组件、指令、Service等等就可以通过功能菜单,方便简洁。

Angular使用的npm的方式对项目进行管理的。npm命令可以很方面的从npm库中安装依赖的类库。实际开发时,操作是非常简单的,因为开发电脑是连网的。但是,通过公司内部的持续集成工具,发布Angular项目时,却遇到了一个问题:Angular需要去github下载node-sass,npm中央库中没有该类库!

此时就需要通过离线的方式去安装node-sass,避免npm去连接github。

解决问题

1. 查看服务器的node版本

  "scripts": {
    "preinstall": "node -p \"[process.platform, process.arch, process.versions.modules].join('-')\" ",
  }

配置 preinstall 查看服务器的node版本信息

微信截图_20190527091627.png
微信截图_20190527091627.png

可以看到版本信息为: linux-64x-57 .

2. 下载node-sass

然后去Github上下载对象的node-sass版本,下载地址:https://github.com/sass/node-sass/releases

node-sass离线方式安装_第1张图片
微信截图_20190527093747.png

3. 配置离线信息

将对应的node下载后,放到前端项目里面:

  1. 在项目里根目录下新建lib文件夹
  2. 将下载的 linux-x64-57_binding.node 复制到lib中
  3. 配置package.json中,sass的离线配置
"nodeSassConfig": {
  "binaryPath": "./lib/linux-x64-57_binding.node"
}

此时再在服务器上进行发布前端项目,就可以看到node-sass的安装不再会去请求github了。

结论

现在有的项目依赖管理工具如Maven, npm等等,在有外网环境的情况下,使用起来是非常方便的。但是如果脱离了互联网,那将是开发者的噩梦,犹如回到了远古时代。作为开发者,在用惯了打火机的年代,还是需要了解一下如何钻木取火的。

node-sass离线方式安装_第2张图片
微信图片_20190719095938.jpg

你可能感兴趣的:(node-sass离线方式安装)