原文地址:React Native on the Universal Windows Platform
今天,微软和Facebook在Facebook的开发者大会F8 2016上,宣布他们正在将通用Windows平台(UWP)支持React Native。这被作为一个开源的,社区支持的框架。新UWP支持扩展这些原生应用,包括270万活跃的Windows10设备的新市场,并拥有超越移动设备范畴的机会,从个人电脑,到Xbox One和HoloLens。对于Windows应用程序开发人员,这也意味着有机会嵌入React Native组件到他们现有的UWP应用程序并利用React Native提供的开发工具和编程范式。
除了在核心框架支持这项工作,微软还提供了开源工具和服务,以帮助开发人员创建React Native应用。该React Native扩展为Visual Studio Code编辑器带来了一个直观,高效的环境来编写和调试React Native应用。再加热代码推送,一个开源的服务可以直接将更新推送给用户,微软正在帮助React Native社区构建和比以往更快速地部署应用程序。
对于那些不熟悉的人,React Native是2015年成长最快的开源项目,在GitHub上累积超过30,000个stars。它不是一个“编写一次,到处运行”的框架,React Native认为每个平台有着不同的特性和功能,所以应用程序可以且应该,运用这些独特的差异。相反,他们使用的口号是“学习一次,到处编写”,表达了React Native关注更多的是编程范式和开发工具及扩展生态系统,而不仅是共享代码的事实。这同样适用于UWP上的React Native;基于UWP使用React Native编写的应用程序应该像原生应用,直接使用XAML编写的应用程序那样。
作为示例,让我们来看看在F8大会日程安排应用程序,它展示了许多可在React Native的Windows模块。在Windows10移动设备和桌面设备家族中,该应用程序的外观和运行都很棒。
Win10 Mobile Win10 Desktop在表象之下,React Native使应用构建工具能够使用JavaScript来定义用户界面,该框架将来自JavaScript中React DOM翻译到原生平台视图管理器的方法调用,使开发人员能够通过JavaScript函数调用,取代直接调用原生模块。这种情况下React Native UWP,视图管理器和原生模块使用C#实现的,视图管理器实例化和操作XAML元素。我们使用Chakra作为JavaScript运行环境,它可以被任何UWP应用使用,而无需打包的额外的二进制文件。
今天的公告和发布仅仅是个开始。此版本提供了一个独立的GitHub Repo作为初始平台支持。展望未来,我们将努力增加额外的功能,并把我们的实现对标原来的项目。
您可以了解更多有关参考实现和我们构建和发布Windows 10 React Native版F8 Developer Conference app的经验,可以参加将于Dublin 5月6号举行的Decoded Conf。出来见我们的团队 - 我们会在那里讨论项目的详细情况。我们邀请开发者参考我们的实现,加入我们,并在GitHub上跟踪最新进展。
Written by Eric Rozell, Software Engineer, Microsoft Developer Experience
网友评论