完全离线的开发环境下安装node-sass

完全离线的开发环境下安装node-sass

我的win32-x64-64_binding.node.install.bat

set SASS_BINARY_PATH=D:/code/win32-x64-64_binding.node
yarn add node-sass -D --verbose

在d:/code目录下放相应的文件,从github上下载下来

把win32-x64-64_binding.node.install.bat拷贝到项目的根目录下,与package.json同目录

 

 

Ryan_JS
2018.01.21 21:29:47字数 682阅读 7,815

背景

要在一个完全离线的环境下联调,涉及的改动比较多,而且该网络不能连接任何的usb设备,所以代码有问题希望能在完全离线的环境下直接修改。在安装了本地的cnpm server之后,遇到了node-sass安装问题,需要SASS Binary。本文主要介绍如何解决缺少这个Binary文件的问题。

(简书MarkDown编辑器不支持页面内跳转,这里没有传送门,解决方案在下面,前言可以略过)

前言

Less & SASS

现在前端的预处理语言,Less & SASS两家独大,而如何选择这个问题应该有很多人遇到过。虽然根据StackOverflow的统计数据,SASS的使用者明显更多,不过SASS上面有一个问题,编译SASS需要安装Ruby,而Ruby官网因为众所周知的原因在国内访问不了,因此仅仅就国内来说,很多人因此选择了Less。

其实他们俩区别真不大,主要的区别如下:

  1. 编译环境不一样

    SASS安装需要Ruby环境;Less需要引入Less.js来处理。

  2. 变量符不一样, Less :@,SASS:$

    作用域其实也有点不同,Less是存在局部变量这么一说的,SASS则一直都是后面定义的变量会替换掉前面定义的,而不管前面那个变量定义的层级。

  3. 输出设置。

    Less没有输出设置。SASS则可以配置输出设置:nestedcompactcompressedexpanded,默认nested

  4. SASS支持条件判断和循环语句,比如ifelse,for等等。而Less不支持。

    这一点其实是比较重要的一点,权衡考量使用SASS还是Less,也就在这了。不过这个需求对我来说,一般来说没有或者没这么迫切,对大部分的业务需求来说应该也是吧。

所以该选择哪个?

其实没关系,如果你用Less那就继续Less,如果Antd用的比较多那用Less也可以少配置一个SASS loader。功能需求更多,那SASS会更适合你。

解决方案

  1. 从以下网址中寻找到对应平台的Binary文件:https://github.com/sass/node-sass/releases,比如Linux下:https://github.com/sass/node-sass/releases/download/v4.7.2/linux-x64-59_binding.node

  2. 设置环境变量:

set SASS_BINARY_PATH=$fileLoactionOnYourDisk
  1. 然后正常的安装node-sass:
npm install node-sass

或者:

set SASS_BINARY_PATH=$fileLoactionOnYourDisk && npm install node-sass
 
 
0人点赞
 
posted @ 2020-02-01 19:17  yasepix  阅读(5287)  评论(0编辑  收藏  举报