最新公告
  • 欢迎您光临起源地模板网,本站秉承服务宗旨 履行“站长”责任,销售只是起点 服务永无止境!立即加入钻石VIP
  • React Native 0.64 发布,已在 iOS 支持 Hermes

    正文概述 掘金(前沿技术瞭望官)   2021-03-14   670

    今天,我们发布了 React Native 0.64,该版本在 iOS 上提供了对 Hermes 的支持。

    iOS 可选支持 Hermes

    Hermes 是为了运行 React Native 而优化的开源 JavaScript 引擎。它通过降低内存使用率、减小打包体积以及减少应用从启动到可使用所花费的时间来优化性能。

    在此版本中,我们很高兴地宣布,你现在也可以使用 Hermes 在 iOS 上进行构建应用。要在 iOS 上启用 Hermes,请在你的 Podfile 中将 hermes_enabled 设置为 true 并在命令行执行行 pod install

    use_react_native!(
       :path => config[:reactNativePath],
       # 修改 false 为 true 然后安装 pods 以在 iOS 上开启 hermes
       :hermes_enabled => true
    )
    

    请记住,iOS 上对 Hermes 的支持仍处于早期阶段。在进行进一步的基准测试时,我们将其作为可选配置加入。我们鼓励你在自己的应用程序上尝试它,并让我们知道你使用它遇到的情况!

    默认启用内联引用

    内联引用(Inline Requires)是 Metro 的配置选项,它通过将 JavaScript 模块的执行延迟到使用之前(而不是在启动时)来缩短启动时间。

    此功能已经存在并已推荐使用多年,作为一个可选配置选项,已在 我们文档的性能章节 中列出。现在,我们默认为新应用程序启用此选项,以帮助人们无需额外配置即可构建快速的 React Native 应用。

    内联引用是一个 Babel 转换器,它接受模块导入并将其转换为内联。在下面的例子中,Inline Requires 将模块导入的位置从文件的顶部转换为调用该模块的位置。

    使用前:

    import { MyFunction } from 'my-module';
    
    const MyComponent = props => {
      const result = myFunction();
    
      return <Text>{result}</Text>;
    };
    

    使用后:

    const MyComponent = props => {
      const result = require('my-module').MyFunction();
    
      return <Text>{result}</Text>;
    };
    

    有关内联引用的更多信息,请参见 性能文档。

    使用 Chrome 浏览 Hermes 堆栈

    在过去的一年中,Facebook 赞助了 Major League Hacking fellowship,以支持他们对 React Native 的贡献。Jessie Nguyen 和 Saphal Patro 添加了使用 Chrome Devtools 上的 “Performance” 标签来查看你的应用程序使用 Hermes 时的执行情况的功能。

    更多信息请参见 新的文档页面。

    Hermes 支持 Proxy

    我们为 Hermes 添加了 Proxy 支持,从而实现了与热门社区项目(如 react-native-firebase 和 mobx)的兼容性。如果你一直在使用这些软件包,则现在可以为你的项目迁移到 Hermes。

    我们计划在即将发布的版本中使 Hermes 成为 Android 的默认 JavaScript 引擎,因此我们正在努力解决人们在使用 Hermes 时仍然遇到的问题。如果还有其他问题使你的应用无法采用 Hermes,请在 Hermes GitHub 仓库提一个 issue。

    React 17

    React 17 不包含面向开发人员的新功能或重大更改。对于 React Native 应用程序,主要更改是 新的 JSX 转换器,该特性使文件不再需要导入 React 才能使用 JSX。

    关于 React 17 的更多信息请参见 React blog。

    主要依赖版本更改

    • 不再支持 Android API 16-20。一直以来 Facebook 都选择放弃对使用率足够低的 Android 版本的支持。Facebook 是 React Native 的主要测试平台,由于 Facebook 不再支持这些 API 版本,因此 React Native 也将放弃支持它们。
    • 需要升级 Xcode 到 12 并升级 CocoaPods 到 1.10
    • 最低 Node 版本支持从 10 提升到 12
    • Flipper 升级到 0.75.1

    感谢

    感谢数以百计的贡献者,这些贡献者使 0.64 的发布成为可能!0.64 changelog 包含此版本中包含的所有更改。



    起源地下载网 » React Native 0.64 发布,已在 iOS 支持 Hermes

    常见问题FAQ

    免费下载或者VIP会员专享资源能否直接商用?
    本站所有资源版权均属于原作者所有,这里所提供资源均只能用于参考学习用,请勿直接商用。若由于商用引起版权纠纷,一切责任均由使用者承担。更多说明请参考 VIP介绍。
    提示下载完但解压或打开不了?
    最常见的情况是下载不完整: 可对比下载完压缩包的与网盘上的容量,若小于网盘提示的容量则是这个原因。这是浏览器下载的bug,建议用百度网盘软件或迅雷下载。若排除这种情况,可在对应资源底部留言,或 联络我们.。
    找不到素材资源介绍文章里的示例图片?
    对于PPT,KEY,Mockups,APP,网页模版等类型的素材,文章内用于介绍的图片通常并不包含在对应可供下载素材包内。这些相关商业图片需另外购买,且本站不负责(也没有办法)找到出处。 同样地一些字体文件也是这种情况,但部分素材会在素材包内有一份字体下载链接清单。
    模板不会安装或需要功能定制以及二次开发?
    请QQ联系我们

    发表评论

    还没有评论,快来抢沙发吧!

    如需帝国cms功能定制以及二次开发请联系我们

    联系作者

    请选择支付方式

    ×
    迅虎支付宝
    迅虎微信
    支付宝当面付
    余额支付
    ×
    微信扫码支付 0 元