Microsoft 将在 UWP 上支持 React Native,同时为 VS Code 添加工具软件

阅读数:1475 2016 年 4 月 26 日

话题:JavaScript微软Facebook语言 & 开发

Microsoft 和 Facebook 日前宣布 React Native 的下一个目标平台是 Universal Windows Platform(UWP)。

对于已经在多个设备平台上使用 React Native 的开发者来说,这是个好消息,因为这让他们可以在 Windows 上重用组件。对于 UWP 的开发者来说,这为他们提供了另一种开发应用的方式只要他们已经可以使用 JavaScript 开发应用。

尽管实质是 JavaScript,React Native 代码将会转化成 C# 代码。在这篇公告中, Eric Rozell 说道:

该框架将 React DOM 从 JavaScript 转化为原生平台上视图管理器的方法调用,让开发者通过 JavaScript 的方法调用来代理原生模块的直接调用。在 UWP 上使用 React Native 的情形下,视图管理器和原生模块是用 C# 实现的,视图管理器会实例化和操作 XAML 元素。

应用中实际运行的 JavaScript 代码是 Chakra 处理的。

为了帮助 React Native 应用的开发,Microsoft 还为 Visual Studio Code 发布了React Native 扩展。该扩展提供了一个调试环境,而且可以让开发者使用 IntelliSense 功能遍历 React Native 的 API。

之前,一个开发 React Native 应用的常用方式是使用 Facebook 自己的Nuclide,但是这在 Windows 并不可用。Visual Studio Code 是跨平台的,为 Windows 上的 React Native 开发者提供了一个出色的工具。

使用 WinJS 开发 React 和 Angular 应用已经可行了一段时间,但是并没有“原生控件”的感觉。最近,一个可以让开发者使用Angular 2 开发 UWP 应用的社区项目已经在 GitHub 启动。

相比之下,React Native 应用使用 JavaScript 和 React.js 开发,将 UI 元素编译成目标平台上原生的控件而不是渲染基于 JavaScript 的控件。

React Native 开发者以及作者 Bonnie Eisenman 认为该新闻只是一个更大的趋势的起始点:

我认为针对 UWP 的 React Native 真的会将 RN 确立为多平台开发的普遍的通用语言,而不仅仅是移动应用。它还强调了 React Native 不是说在多平台上运行相同的应用;而是使用相同的技能库,促使每一个平台都有最好的用户体验。

UWP 加入了 Android 和 iOS,作为 React Native 的一个主要面向的平台。目前,UWP 项目还是和其他项目保持独立的,但是目标还是将其中一些工作贡献回主线项目上。

查看英文原文Microsoft Supports React Native on UWP, Adds Tooling to VS Code


感谢张龙对本文的审校。

给 InfoQ 中文站投稿或者参与内容翻译工作,请邮件至editors@cn.infoq.com。也欢迎大家通过新浪微博(@InfoQ@丁晓昀),微信(微信号:InfoQChina)关注我们。