为何Expo成为React Native官方推荐框架?

在React Conf上,我们更新了关于构建React Native应用的最佳工具指南:一个React Native框架——一个工具箱,包含所有必要的API,让你可以构建生产就绪的应用。

现在,使用React Native框架(如Expo)是创建新应用的推荐方法。

在这篇博文中,我们将详细介绍它们是什么,以及它们对于开始新项目的React Native开发者来说意味着什么。

什么是React Native框架?

如果你一直在构建生产应用,你可能知道迟早需要解决一系列常见问题。

无论是在Web还是原生平台上构建任何应用,你可能都希望用户能够在不同的屏幕之间导航、获取数据并存储用户状态。但原生应用还有更多需要处理的问题:你需要工具来在React Native版本之间升级你的原生代码,管理所有依赖项的兼容版本,以及处理原生构建工具。

没有合适的工具,把一个应用从想法变为产品就像是一场孤独的旅行。

我们希望你能专注于为你的用户编写漂亮的应用和功能,而不是一遍又一遍地解决那些常见问题。

这就是我们认为通过提供一个包含所有必要工具的工具箱来体验React Native的最佳方式,这些工具可以让你构建生产就绪的应用。

我们发现,你要么使用一个框架,要么自己构建一个框架。

构建自己的框架,为自己打造路由、导航、部署等解决方案,这并没有错。像Meta和微软这样的大公司会在内部构建自己的框架,以便深入集成到他们的遗留应用中。但我们相信,大多数人最好还是使用现有的框架。

如果你一直在Web上使用React,你可能对生产级React框架的类似概念比较熟悉。

截至今天,React Native唯一推荐的社区框架是Expo。自React Native早期开始,Expo团队就一直在投资React Native生态系统,而今天,我们认为Expo提供的开发者体验是同类中最优的。

注意:Expo框架本身是免费且开源的,而Expo Application Services(EAS)是一个可选的付费服务。

如果你最近没有使用过Expo,请务必不要错过Expo的Kadi在这次演讲中展示的2024年你可以用Expo做什么。

我们还更新了网站上的“入门”页面,以反映这一推荐。

框架将如何影响你?

  • 如果你已经在使用像Expo这样的推荐框架,那么你已经准备好了!

  • 如果你想将现有应用迁移到Expo,你可以在Expo的官方网站上找到迁移指南。Expo提供了许多好处,比如更容易地升级React Native版本、更好的开发者体验等等。

  • 但是,如果你不能或不想迁移到Expo,那也没关系。不使用官方框架的React Native将继续得到支持。你一直在使用的工具,如React Native Community CLI、模板和升级助手,将继续正常工作。

  • react-native init命令已经从核心中移出,现在可以通过以下方式访问:

npx @react-native-community/cli@latest init

在GitHub上的位置是react-native-community/cli。

  • 如果你是React Native库开发者,我们收集了一份关于应使用哪些API的建议列表。更多详情请参阅RFC(请求评论稿)。

进一步阅读

如果你对这项决策背后的原因感兴趣,我们邀请你阅读RFC0759:《React Native框架》。这份RFC是React Native生态系统中的不同合作伙伴和参与者经过数月努力、无数讨论和头脑风暴的结果。

虽然目前Expo是唯一推荐的框架,但RFC还包含了如何成为推荐框架的指南,因为我们希望在这个领域看到更多的竞争和创新。

此外,你应该观看在App.js 2024上进行的useFrameworks()演讲,我们在其中简短地介绍了这份RFC和必要的变更。

我们相信,通过明确React Native核心和框架各自的职责,我们可以促进一个更健康的生态系统,并推动React Native的增长和创新。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://xiahunao.cn/news/3225540.html

如若内容造成侵权/违法违规/事实不符,请联系瞎胡闹网进行投诉反馈,一经查实,立即删除!

相关文章

unity中我想实现现实中琴弦的那种互动抖动效果,谈谈思路。

🏆本文收录于《CSDN问答解惑》专栏,主要记录项目实战过程中的Bug之前因后果及提供真实有效的解决方案,希望能够助你一臂之力,帮你早日登顶实现财富自由🚀;同时,欢迎大家关注&&收藏&…

comsol达西定律的小例子

comsol达西定律的小例子

边缘计算盒子_B100_Jetson Nano (aarch64)开发环境搭建

目录 一、刷机步骤1、搭建刷机环境2、进入刷机模式3、开始刷机 二、系统迁移到TF卡 或者 U盘1、迁移脚本2、提前插入U盘或者TF卡3、 开始迁移 三、搭建miniconda 环境1、下载安装 四、jetpack开发套件环境1、版本查看2、apt 更换国内源3、安装Jetson-stats管理工具 一、刷机步骤…

基于swagger插件的方式推送接口文档至torna

目录 一、前言二、登录torna三、创建/选择空间四、创建/选择项目五、创建/选择应用六、获取应用的token七、服务推送7.1 引入maven依赖7.2 test下面按照如下方式新建文件 一、前言 Torna作为一款企业级文档管理系统,支持了很多种接口文档的推送方式。官方比较推荐的…

C#中简单Socket编程

C#中简单Socket编程 Socket分为面向连接的套接字(TCP套接字)和面向消息的套接字(UDP 套接字)。我们平时的网络编程是对Socket进行操作。 接下来,我用C#语言来进行简单的TCP通信和UDP通信。 一、TCP通信 新建项目SocketTest,首先添加TCP通信的客户端代…

来聊聊Redis持久化AOF管道通信的设计

写在文章开头 最近遇到很多烦心事,希望通过技术来得以放松,今天这篇文章笔者希望会通过源码的方式分析一下AOF如何通过Linux父子进程管道通信的方式保证进行AOF异步重写时还能实时接收用户处理的指令生成的AOF字符串,从而保证尽可能的可靠性…

神经网络中的激活函数

目录 一、什么是激活函数:二、如何选择激活函数:1.Sigmoid激活函数:2.线性激活函数:3.ReLU激活函数: 一、什么是激活函数: 激活函数是神经网络中的一种函数,它在神经元中起到了非线性映射的作用…

【附源码】ttkbootstrap实现GUI信息管理系统

【附源码】ttkbootstrap实现GUI信息管理系统 文章目录 【附源码】ttkbootstrap实现GUI信息管理系统效果预览环境搭建功能实现展示学生信息表格新增学生信息表单修改学生信息表单删除学生信息 代码解析完整代码运行和测试结尾 效果预览 环境搭建 Python 3.8 ttkbootstrap 1.10.…

IPD流程验证阶段模板及表单

目录 简介 内容brief(部分截图) 作者简介 简介 前面几期分享了 IPD 开发流程中的, 概念、计划、开发阶段的相关资料。 今天就来分享一下验证阶段的资料及表单内容。 在 IPD 流程的这个阶段, 就不仅仅是测试功能的实现这么…

AD9361的0x05E寄存器的说明

AD9361的0x05E寄存器在配置过程中扮演着重要的角色,特别是在与基带锁相环(Base Band PLL, BB-PLL)的状态监测相关时。以下是对AD9361的0x05E寄存器的详细说明: 一、功能概述 AD9361的0x05E寄存器通常用于监测BB-PLL的状态&#…

【国产开源可视化引擎Meta2d.js】鹰眼地图

鹰眼地图 画布右下角弹出一个缩略导航地图,鼠标点击可以跳到指定位置。 在线体验: 乐吾乐2D可视化 示例: // 显示缩略地图 meta2d.showMap();// 关闭缩略地图 meta2d.hideMap();

多会话 Telnet 日志记录器

创建一个多会话 Telnet 日志记录器可以实现对多个 Telnet 会话进行连接、监控和记录日志。以下是一个基本的 Python 示例,使用 telnetlib 库来实现多会话 Telnet 日志记录器,并使用 threading 模块来处理多个会话。 1、问题背景 我们需要编写一个脚本&a…

合合信息大模型加速器重磅上线,释放智能文档全新可能

目录 0 写在前面1 高速文档解析引擎:拓宽大模型认知边界2 文本嵌入模型acge:克服大模型感知缺陷3 行业赋能:以百川智能为例总结 0 写在前面 随着人工智能技术的飞速发展,大模型以强大的数字处理能力和深度学习能力,不…

Spark RDD优化

Spark RDD优化 一、分区优化二、持久化优化三、依赖优化四、共享变量优化五、提交模式与运行模式优化六、其他优化 一、分区优化 分区数调整:RDD的分区数可以通过repartition和coalesce方法进行调整。合理的分区数可以提高并行度,但过多的分区会增加管…

数据库之DML

1,创建表 mysql> create table student(-> id int primary key,-> name varchar(20) not null,-> grade float-> );插入记录 mysql> insert into student values(1,monkey,98.5); Query OK, 1 row affected (0.01 sec)一次性插入多条记录 mysql…

Rti DDS qos

1. parent.allow_interfaces_list 字符串列表,每个字符串标识一系列接口地址或接口名称。接口必须指定为逗号分隔的字符串,每个逗号分隔一个接口。 例如,以下是可接受的字符串: 192.168.1.1 192.168.1.* 192.168.* 192.* e…

高速电吹风方案介绍,多档温度风速调节,转速可达105000RPM

高速电吹风是这几年很火的一种电动小家电,能够在较短时间内完成头发干燥,减少对头发的热损伤。可以通过高速电机和风扇来产生高速风流,迅速将头发表面的水分吹干。高速电吹风通常配有多种档位风速和温度可以设置,用户可以根据需要…

VS安装Qt扩展工具

1-Visual Studio中安装QT插件 **插件下载地址:**http://download.qt.io/development_releases/vsaddin/ 关闭VS,双击下载的QT插件,默认安装即可; (1)配置Qt的MSVC编译器安装路径 打开Visual Studio,在菜单栏…

CentOS 6.5配置国内在线yum源和制作openssh 9.8p1 rpm包 —— 筑梦之路

CentOS 6.5比较古老的版本了&#xff0c;而还是有一些古老的项目仍然在使用。 环境说明 1. 更换国内在线yum源 CentOS 6 在线可用yum源配置——筑梦之路_centos6可用yum源-CSDN博客 cat > CentOS-163.repo << EOF [base] nameCentOS-$releasever - Base - 163.com …

unity使用 MQTT复现plant simulate仿真

unity使用 MQTT复现plant simulate仿真 一、plant simulate端配置 1、plant simulate MQTT组件配置,该组件在类库的信息流类目下,端口不变,填写ip即可; 2、设备配置界面,在控件入口和出口处各挂一个脚本,当物料出入该设备时会分别触发执行这两个脚本,粘贴如下代码; E…