存在一些webpack bundle分析脚本,它们显示包含的模块列表及其大小。但是,Scala.js会为所有Scala代码发出一个大模块,因此这些工具无法查看它。
作为库作者和其他Scala.js库的最终用户,我想知道各种Scala软件包/类对我的软件包大小有多大贡献。
据我所知,Scala.js优化使得无法说某个库的权重正好是X Kb,因此我对一个查看特定包的解决方案感兴趣。
目前,我能做的最好的事情是在生成的JS文件中搜索"com.package.name
,并在滚动条上判断结果指标的密度,但这显然非常不理想。
所以我的问题是,是否有任何工具甚至一半的烘焙脚本可以改善我正在做的事情?
答案 0 :(得分:1)
这可能并非您想要的精确,
但是为了帮助测量每个js文件的近似大小,您可以检查二进制文件( 在由scalac编译器生成的target / scala-2.1.2 / class中运行诸如fastOptJS之类的任务后,使用.sjsir扩展名并将它们中的每一个编译为javascript。
要将二进制文件编译为javascript,可以使用此answer中提供的代码。
答案 1 :(得分:0)
最后找到了一个不错的解决方案–正确的sbt config source-map-explorer npm软件包可以根据源映射完全满足我的需求(当然!)。它显示了各个Scala类对分发包大小的直接影响。