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 )关注我们。
活动推荐:
2023年9月3-5日,「QCon全球软件开发大会·北京站」 将在北京•富力万丽酒店举办。此次大会以「启航·AIGC软件工程变革」为主题,策划了大前端融合提效、大模型应用落地、面向 AI 的存储、AIGC 浪潮下的研发效能提升、LLMOps、异构算力、微服务架构治理、业务安全技术、构建未来软件的编程语言、FinOps 等近30个精彩专题。咨询购票可联系票务经理 18514549229(微信同手机号)。
评论