跳到主要内容

React Native 月报 #2

·阅读时长 9 分钟

React Native 月度会议继续进行!本次会议,我们迎来了 Infinite Red,他们是 Chain React,React Native 大会背后的智囊团。由于在场的大部分人都将在 Chain React 上发表演讲,我们将会议推迟了一周。大会的演讲已经发布到线上,我鼓励大家去看看。那么,让我们看看我们的团队在忙些什么。

团队

第二次会议,共有9个团队加入我们

备注

以下是各团队的备注

Airbnb

Callstack

  • Mike Grabowski 一如既往地管理着 React Native 的月度发布,其中包括一些已推出的测试版。特别是在努力将 v0.43.5 版本发布到 npm,因为它将解除对 Windows 用户的限制!
  • Haul 的工作进展缓慢但稳定。有一个添加了 HMR 的拉取请求,其他改进也已发布。最近有几位行业领导者采用了它。可能计划在该领域开始全职带薪工作。
  • Michał Pierzchała 来自 Jest 团队,本月加入了 Callstack。他将协助维护 Haul,并可能从事 Metro BundlerJest 的工作。
  • Satyajit Sahoo 现在和我们在一起了,太棒了!
  • 我们的开源部门即将推出一系列酷炫的东西。特别是,正在努力将 Material Palette API 引入 React Native。计划最终发布我们的原生 iOS 套件,旨在提供 1:1 的原生组件外观和感觉。

Expo

  • 最近推出了 Native Directory,旨在帮助发现和评估 React Native 生态系统中的库。问题在于:库太多,难以测试,需要手动应用启发式方法,而且哪些是最好的、应该使用的并不立即显而易见。也很难知道某些东西是否与 CRNA/Expo 兼容。所以 Native Directory 试图解决这些问题。请查看它并将您的库添加进去。库列表在此。这只是我们第一次尝试,我们希望它由社区拥有和运营,而不仅仅是 Expo 团队。所以如果您认为这有价值并希望改进它,请加入!
  • Snack 中添加了对使用 Expo SDK 19 安装 npm 包的初步支持。如果您遇到任何问题,请告诉我们,我们仍在解决一些错误。与 Native Directory 一起,这应该使测试只有 JS 依赖项或包含在 Expo SDK 中的依赖项的库变得容易。试试看
  • 发布了 Expo SDK19,其中包含全面的改进,我们现在正在使用更新的 Android JSC
  • 正在与 Alexander Kotliarskyi 合作撰写文档指南,其中包含如何改善应用程序用户体验的提示列表。请加入并添加到列表中或帮助撰写其中一些内容!
  • 继续致力于:音频/视频、相机、手势(与 Software Mansion 合作,react-native-gesture-handler)、GL 相机集成,并希望在 SDK20(8月)中首次推出其中一些功能,届时其他功能也将得到显著改进。我们才刚刚开始为 Expo 客户端构建用于后台工作(地理定位、音频、处理通知等)的基础设施。
  • Adam Miskiewiczreact-navigation 中模仿 UINavigationController 的过渡方面取得了一些不错的进展。请查看他推文中的早期版本 - 很快将随之发布。另请查看他上游MaskedViewIOS。如果您有能力和意愿为 Android 实现 MaskedView,那将非常棒!

Facebook

  • Facebook 内部正在探索在 React Native 中嵌入原生 ComponentKitLitho 组件的可能性。
  • 非常欢迎对 React Native 的贡献!如果您想知道如何贡献,“如何贡献”指南描述了我们的开发流程并列出了发送您的第一个拉取请求的步骤。还有其他不需要编写代码的贡献方式,例如分类问题或更新文档。
    • 在撰写本文时,React Native 有 **635** 个未解决的问题和 **249** 个未解决的拉取请求。这对我们的维护者来说是巨大的负担,当内部修复问题时,很难确保相关任务得到更新。
    • 我们不确定如何在满足社区需求的同时处理这个问题。一些(但不是全部!)选项包括关闭陈旧问题、授予更多人管理问题的权限,以及自动关闭不符合问题模板的问题。我们编写了“对维护者的期望”指南,以设定期望并避免意外。如果您对我们如何改进维护者体验并确保提出问题和拉取请求的人感到被倾听和重视有任何想法,请告诉我们!

GeekyAnts

  • 我们在 Chain React 上演示了与 React Native 文件协同工作的设计工具。许多与会者报名了候补名单。
  • 我们还在研究其他跨平台解决方案,例如 Google Flutter(即将进行重大比较)、Kotlin NativeApache Weex,以了解它们的架构差异以及我们可以从中学到什么来提高 React Native 的整体性能。
  • 我们的大部分应用程序都切换到了 react-navigation,这改善了整体性能。
  • 此外,还发布了 NativeBase Market - 一个面向(并由)开发者的 React Native 组件和应用程序市场。

Infinite Red

Microsoft

  • CodePush 现已集成到 Mobile Center。现有用户的工作流程不会有任何变化。
    • 一些人报告了重复应用程序的问题——他们已经在 Mobile Center 上有一个应用程序。我们正在努力解决这些问题,但是如果您有两个应用程序,请告诉我们,我们可以为您合并它们。
  • Mobile Center 现在支持 CodePush 的推送通知。我们还展示了如何将通知和 CodePush 结合起来用于 A/B 测试应用程序——这是 React Native 架构独有的功能。
  • VS Code 在 ReactNative 上有一个已知的调试问题——扩展的下一个版本将在几天内修复此问题。
  • 由于微软内部还有许多其他团队也在从事 React Native 的工作,我们将在下次会议上努力争取所有团队的更好代表。

Shoutem

  • Shoutem 上完成了简化 React Native 开发的过程。您可以在 Shoutem 上开发应用程序时使用所有标准的 react-native 命令。
  • 我们做了大量工作,试图找出如何最好地在 React Native 上进行性能分析。大部分文档已经过时,我们将尽最大努力在官方文档上创建拉取请求,或者至少在博客文章中写下我们的一些结论。
  • 我们正在将导航解决方案切换到 react-navigation,因此我们可能很快会有一些反馈。
  • 我们在工具包中发布了一个新的 HTML 组件,它将原始 HTML 转换为 React Native 组件树。

Wix

  • 我们已开始为 Metro Bundler 提交一个拉取请求,该请求包含 react-native-repackager 的功能。我们更新了 react-native-repackager 以支持 RN 44(我们已在生产中使用)。我们正在将其用于 detox 的模拟基础设施。
  • 在过去的三周里,我们一直在对 Wix 应用程序进行 Detox 测试。这是一个惊人的学习体验,了解如何在如此规模的应用程序中(超过 40 名工程师)减少手动 QA。因此,我们解决了 Detox 的几个问题,新版本刚刚发布。我很高兴地报告,我们正在践行“零缺陷策略”,到目前为止测试一直稳定通过。
  • Detox for Android 进展顺利。我们得到了社区的大力帮助。我们预计在大约两周内推出初始版本。
  • DetoxInstruments,我们的性能测试工具,正在变得比我们最初设想的更大。我们现在计划将其转换为一个独立的工具,它将不会与 detox 紧密耦合。它将允许全面调查 iOS 应用程序的性能。它还将与 detox 集成,以便我们可以在性能指标上运行自动化测试。

下一次会议

下一次会议定于2017年8月16日。由于这只是我们的第二次会议,我们想知道这些会议记录对 React Native 社区有何益处。如果您对我们如何改进会议成果有任何建议,请随时在 Twitter 上联系我