【0.58】React Native 中文更新日志

栏目: 服务器 · 发布时间: 7年前

内容简介:很久没有翻译过更新日志了,主要我确实抽不出这么多的时间来。翻译更新日志是非常消耗时间的一件事。之前我在翻译的时候,基本上会把所有更新内容都看一遍,不只是列表里的内容,而是每个 commit  详情内容都会看。有时候如果更新内容特别多,加上我只有晚上下班后才有时间,所以一篇更新日志就差不多得一周的时间才能翻译完。之所以这么认真,是我觉得这是一件有意义的事情,更新日志对于关注和使用 RN 的人来说还是挺重要的,不过最开始做的时候,主要还是因为我也用得着,反正都看了,就顺便翻译了好了,说不定还有人会看。而且众所周

很久没有翻译过更新日志了,主要我确实抽不出这么多的时间来。翻译更新日志是非常消耗时间的一件事。之前我在翻译的时候,基本上会把所有更新内容都看一遍,不只是列表里的内容,而是每个 commit  详情内容都会看。有时候如果更新内容特别多,加上我只有晚上下班后才有时间,所以一篇更新日志就差不多得一周的时间才能翻译完。

之所以这么认真,是我觉得这是一件有意义的事情,更新日志对于关注和使用 RN 的人来说还是挺重要的,不过最开始做的时候,主要还是因为我也用得着,反正都看了,就顺便翻译了好了,说不定还有人会看。而且众所周知的原因,如果不仔细研究下到底更新了什么,就贸然升级版本,那种感受…真的很心累!

划重点

  • 加强核心组件对 Flow type 的使用
  • ScrollView,CameraRollView 和 SwipeableRow 发生重大变更,在调用某些方法时,不再绑定组件实例
  • WebKit 支持双向 TLS 验证
  • 从 /assets 之外的目录提供资源
  • 修复大量奔溃,以及解决了一些意外

新增

通用

  • 增加 publicPath 属性,以支持从不同的位置加载静态 assets

Android

  • Bundler 服务支持 Android 系统级属性 ,使在多个 App 间调试程序变得更加简单

  • Native Modules 现在支持在调用 promise.reject 的时候添加一个 WritableMap 类型的额外参数 (userInfo)。具体可以查看 Promise.java 中的实现方法。然后在 JavaScript 中可以通过 Error.userInfo 的方式获取这个参数。iOS 已经实现该功能。

  • Native Modules 现在将 nativeStackAndroid 属性暴露给使用 Exception / Throwable 拒绝的promise, 使 Javascript 可以通过 Error.nativeStackAndroid 显示 Native 的错误堆栈信息。iOS 可以参考 Error.nativeStackIOS。

iOS

  • 将 moduleForName: lazilyLoadIfNecessary 添加到 RCTBridge.h 中,以便按名称查找模块并强制加载它们。以及其它对 LazyLoading 大量的改进。
  • 为 WebView 增加 setClientAuthenticationCredential 方法,以便于在开启 WebKit={true} 时进行双向TLS身份验证

修改

通用

  • 加强核心组件对 Flow type 的使用
  • 大量公共组件都转换为 ES6 类( ScrollView,CameraRollView,SwipeableRow,ProgressBarAndroid,ProgressViewIOS,SegmentedControllIOS,ToolbarAndroid)
  • Flow 版本升级为 v0.86.0
  • metro 版本升级为 v0.49.1
  • jest 版本升级为 v24.0.0-alpha.6
  • fbjs-scripts 版本升级为 v1.0.0
  • folly 版本升级为 v2018.10.22.00
  • 同步 React 版本为 16.6.1
  • 在 Hot Reloding 时清除错误消息(上周五试用了 0.58 后发现 reloading 有时候会失效,可能是这里出现了 bug)
  • CxxModules 的方法中可以添加两个 callback 函数了

重大变化

已经转换为 ES6 组件类中,有些公有方法不再绑定该组件的实例。受此影响的方法有:

在 ScrollView 中:setNativeProps / getScrollResponder / getScrollableNode / getInnerViewNode / scrollTo / scrollToEnd / scrollWithoutAnimationTo / flashScrollIndicators。

在 CameraRollView 中:rendererChanged。

在 SwipeableRow 中:close。

因此,在方法中通过引用这些方法这些方法当做引用通过引用将这些方法作为回调传递给函数已不再安全。组件实例的自动绑定方法是createReactClass的一种行为,我们决定在切换到ES6类时不保留这种行为。

Android

  • 优化 PlatformConstants.ServerHost, PlatformConstants.isTesting 和 PlatformConstants.androidID 的性能

iOS

  • 将 RCTLogWarn() 改为 RCTLogInfo()

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

超简单!一学就懂的互联网金融

超简单!一学就懂的互联网金融

视觉图文 / 人民邮电出版社 / 2015-2-1 / 45.00元

零基础、全图解,通过130多个精辟的知识点、220多张通俗易懂的逻辑图表,让您一书在手,即可彻底看懂、玩转互联网金融从菜鸟成为达人,从新手成为互联网金融高手! 本书主要特色:最简洁的版式+最直观的图解+最实用的内容。 本书细节特色:10章专题内容详解+80多个特别提醒奉献+130多个知识点讲解+220多张图片全程图解,深度剖析互联网金融的精华之处,帮助读者在最短的时间内掌握互联网金融知......一起来看看 《超简单!一学就懂的互联网金融》 这本书的介绍吧!

随机密码生成器
随机密码生成器

多种字符组合密码

XML 在线格式化
XML 在线格式化

在线 XML 格式化压缩工具