【问题标题】:Does Hermes engine in React Native need a minified file as an input?React Native 中的 Hermes 引擎是否需要一个缩小的文件作为输入?
【发布时间】:2021-02-18 08:48:12
【问题描述】:

目前(至少从 0.64-rc.3 开始),React Native 首先在源上运行 Metro Bundler / Uglify,然后将缩小的 jsbundle 传递给 hermesc。我注意到,在我的至少 2 个项目中,禁用 Metro 中的 Uglify 步骤大大加快了 Hermes 编译步骤。

问题是:Hermes 是否需要缩小源?

直观地说,这根本不重要,因为 Uglify 不执行任何死代码剥离或其他 AST 优化。但我的理解中可能遗漏了一些关键细节。

【问题讨论】:

    标签: react-native metro-bundler react-native-hermes


    【解决方案1】:

    根据Tzvetan Mikov (Hermes project lead), who has kindly answered this question on Github,Hermes 不需要任何预缩小:

    不,Hermes 不需要缩小输入。压缩器主要重命名局部变量和参数并执行一些简单的 AST 转换,这对编译后的 Hermes 包的大小和性能几乎没有影响(如果有的话)。我们建议使用 Hermes 禁用缩小,但并没有真正积极推动它,因为 Metro 管道也支持 JSC,这确实受益于缩小。

    【讨论】:

      猜你喜欢
      • 2022-10-23
      • 1970-01-01
      • 1970-01-01
      • 2022-12-17
      • 2022-12-24
      • 2022-10-19
      • 1970-01-01
      • 2020-11-29
      • 1970-01-01
      相关资源
      最近更新 更多