在Windows上使用构建工具升级到Node 11.1后的node-sass大小

时间:2018-11-15 20:56:28

标签: node.js angular node-gyp node-sass

最初,我使用的是Node v10(我相信),当生成一个新的角度项目(v7)时,我的node_modules是“适度”的〜140 Mb。

然后,我决定升级到Node v11.1并安装构建工具,该安装程序现在可以选择允许您安装。 我的node_modules大小超过700 MB。 罪魁祸首是node-sass软件包,该软件包现在正在下载整个项目(cpp文件,.sln和所有文件),并在最初的npm安装中(使用node-gyp)进行了完全编译。

是否可以将这种行为更改为没有安装构建工具的情况? (没有手动卸载该节点自动安装的构建管道)

还是我没有看到任何优势?对我来说,一切都很好(包括与scss和sass相关的所有内容),而无需占用大量空间。

1 个答案:

答案 0 :(得分:0)

所以,我发现了正在发生的事情。

angular的当前版本(cli版本7.0.6)将在4.9.3版上安装node-sass。 版本4.9.3不支持节点v11。 4.10.0添加了对节点v11的支持。因此,node-sass正在运行的安装脚本无法找到要从github下载的预构建二进制文件,而只能构建源文件(这会浪费400 MB空间)。

这就是为什么在我更新到最新的节点版本后问题开始出现的原因。

目前有2种解决方案:

  • 在节点的LTS v10上粘贴(已预构建二进制文件)
  • 手动升级到最新版本的node-sass,希望angular不会因此而中断

我选择了选项1,并安装了LTS节点版本。 这个问题可能会及时解决,因为角度会更新其节点-依赖关系。我暂时希望答案能帮助面临同样情况的人。