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

node-sass size after upgrading to Node 11.1 with build-tools on windows

最初我使用的是 Node v10(我相信),当生成一个新的 angular 项目 (v7) 时,我的 node_modules 是 "modest" ~140 Mb。

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

有什么方法可以将此行为更改为未安装构建工具时的处理方式吗? (缺少手动卸载节点自动安装的构建管道)

或者有什么我没有看到的优势吗?对我来说,这一切都很好(包括所有 scss 和 sass 相关的东西)而没有占用 space.

的巨大增加

所以,我知道是怎么回事了。

当前版本 angular(cli 版本 7.0.6)在版本 4.9.3 中安装 node-sass。 版本 4.9.3 不支持节点 v11。 4.10.0 添加了对节点 v11 的支持。因此,node-sass 是 运行 的安装脚本无法找到要从 github 下载的预构建二进制文件,并回退到构建源文件(这导致 400 MB浪费了 space).

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

目前有 2 种解决方案:

  • 坚持使用 node 的 LTS v10(有一个预构建的二进制文件)
  • 手动升级到最新版本的 node-sass 希望 angular 不会因此而中断

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