【问题标题】:How to break down the size of scala.js JS output如何分解scala.js JS输出的大小
【发布时间】:2018-06-14 21:05:16
【问题描述】:

存在一些 webpack 包分析脚本,它们显示包含模块的列表及其大小。但是,Scala.js 为所有 Scala 代码生成了一个大模块,因此这些工具无法查看它。

作为库作者和其他 Scala.js 库的最终用户,我想知道各种 Scala 包/类对我的包大小有多大影响。

我知道 Scala.js 优化使得不可能说给定库的权重正好为 X Kb,因此我对查看特定包的解决方案感兴趣。

目前我能做的最好是在生成的JS文件中搜索"com.package.name,并判断滚动条上结果指示器的密度,但这显然是非常不理想的。

所以我的问题是,是否有任何工具甚至半生不熟的脚本可以改进我正在做的事情?

【问题讨论】:

    标签: performance scala.js scalajs-bundler


    【解决方案1】:

    终于找到了一个很好的解决方案——使用正确的 sbt config source-map-explorer npm 包可以根据源映射完全满足我的需要(当然!)。它显示了单个 Scala 类对包大小的直接影响。

    来源:Scala.js issue #3556

    【讨论】:

      【解决方案2】:

      这可能不像你想要的那样精确,

      但是为了帮助测量每个 js 文件的近似大小,您可以检查二进制文件( 在 scalac 编译器生成的 target/scala-2.1.2/classes 中运行类似 fastOptJS 的任务后使用 .sjsir 扩展名,并将它们中的每一个编译为 javascript。

      要将二进制文件编译为 javascript,您可以使用answer 中提供的代码。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2021-06-25
        • 2021-12-31
        • 1970-01-01
        • 2013-04-01
        • 1970-01-01
        • 2021-05-12
        • 2021-01-22
        • 1970-01-01
        相关资源
        最近更新 更多