Node.js 使用windows上的生成工具升级到节点11.1后的节点sass大小

Node.js 使用windows上的生成工具升级到节点11.1后的节点sass大小,node.js,angular,node-gyp,node-sass,Node.js,Angular,Node Gyp,Node Sass,最初我使用的是Node v10(我相信),在生成一个新的角度项目(v7)时,我的Node_模块是一个“适中的”~140MB 然后我决定升级到节点v11.1并安装构建工具,安装程序现在可以选择安装这些工具。 我的node_模块大小超过了700 MB。 罪魁祸首是node-sass包,它现在正在下载整个项目(cpp文件、.sln和all),并在初始npm安装时得到完全编译(使用node-gyp) 有没有办法将此行为更改为在没有安装构建工具的情况下执行操作的方式?(缺少手动卸载节点自动安装的生成管道)

最初我使用的是Node v10(我相信),在生成一个新的角度项目(v7)时,我的Node_模块是一个“适中的”~140MB

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

有没有办法将此行为更改为在没有安装构建工具的情况下执行操作的方式?(缺少手动卸载节点自动安装的生成管道)


还是有我没有看到的优势?对我来说,这一切都很好(包括所有与SCS和sass相关的内容),占用的空间没有大幅增加。

所以,我知道了发生了什么

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

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

目前有两种解决方案:

  • 坚持使用节点的LTSV10(其中有一个预构建的二进制文件)
  • 手动升级到node sass的最新版本,希望angular不会因此而崩溃
我选择了选项1并安装了LTS节点版本。
当angular更新其节点sass依赖项时,这个问题可能会及时解决。目前,我希望答案能帮助面临同样情况的人。

您可以将一个构建的二进制文件贡献回节点sass,或者等待它们更新为一个。我认为一旦发生这种情况,它将自行消失。