8

dart-sass文档中我们看到 dart-sass 有一个命令行版本并且性能更高。

我想知道我们是否可以以某种方式使用该命令行版本和现有的 webpack 设置来加快我们的构建时性能。

我可以在构建机器中安装飞镖库。但是是否有任何 webpack 插件可以利用它并使用机器依赖项来构建 sass 而不是 dart-sass npm?

4

1 回答 1

3

似乎 dart-sass 团队正在努力支持这个案例(参见这个问题)。但工作还没有完成。

但是是否有任何 webpack 插件可以利用它并使用机器依赖项来构建 sass 而不是 dart-sass npm?

不是我能找到的。但是,可以创建自己的使用 dart 可执行文件的加载器(sass-loader 的源代码一个很好的参考点,而且不是很复杂)。由于 dart cli 采用从 stdin ( sass --stdin) 读取的选项,因此您应该能够通过管道传输到 cli 并传回输出。

可能还有其他方法可以通过 webpack 扩展来实现您的目标,但在我看来,使用加载器似乎是最直接的。

这比使用使用的js api更快sass-loader吗?好吧,根据基准,可执行文件的优势在 1.7 到 4.1 倍之间变化(不包括可执行文件运行速度快 24 倍的最简单情况,但在所有情况下仍然是亚秒级执行)。但是流程生成会产生开销,因此您必须测量以查看在您的情况下什么更快。

于 2021-11-01T17:25:27.320 回答