用于 React Native 的 Github 代码空间

当Github发布了Codespaces,老实说,我曾天真的认为我永远不会放弃我浏览器中运行标签的编辑器。可现实是:好吧,我错了。


要知道我们走到这一步是相当困难的

要求

React Native从一开始就取得了巨大的成就,它简化了移动开发。你所了解到的关于网络的一切,现在同样都适用于移动App。

虽然这是一次继Cordova/Ionic时代之后的飞跃,但棘手的问题依然存在:无论是XCode还是Objective-C,都还需要原生知识。

幸运的是,如果你近期一直在使用React Native,你一定听说过Expo,以及了解过它在近几年的快速发展。Expo设法简化了所有干扰React Native运行的零碎部分,即本地库和工具。

到这里,你可能会对我说的内容感到困惑,那就请跟上我的步伐继续听我讲解。

总的来说,我们把两个代码库变成了一个使用React Native的跨平台应用程序代码库。然后,我们把要使用的多个工具和原生语言合成了只有一个Expo。

如今,我们从一台有足够存储空间和内存的电脑入手,以运行一个应用程序到任何机器上的浏览器–理论上也包括你的手机。

让我们用代码空间深入了解React Native吧。

浏览器中的工具箱

注意:由于VS Code在嵌入式浏览器中运行,它也可以在普通浏览器中运行。

那么,这有什么意义呢?简而言之,Codespaces是运行Github上托管的项目的虚拟机器,所有这些项目都以VS Code的视觉方式打包。这意味着你可以在任何地方、任何设备上处理你的git项目。


你在浏览器中的移动应用程序

VS Code包含了所有你需要的插件,并且拥有强大的Intellisense(尤其是当全部进入TypeScript时),这就为运行Expo项目创造了完美的条件。

如果你还没有Codespaces的权限,可以点击这里。

步骤

要开始使用Codespaces中的Expo,要先在你的机器上创建一个项目。可以在任何文件夹中运行以下程序:

expo init your-application

然后你需要一个Github项目,将你所有的本地代码发送到那里。创建一个资源库

如果一切顺利,你会得到快速命令,并将你的代码推送到Github上。


在你的终端中复制/粘贴以下内容

完成后,可以删除你的本地存储。现在点击刷新,进入代码,用代码空间和新代码空间打开。

大功告成! 你的代码空间应该是可以打开的,里面有你的Expo项目。

现在,我们还需要实施几个步骤让它在手机上的Expo Go/客户端中运行:

  • 在Codespaces中打开一个终端
  • npm install -g expo-cli (或作用相当的)安装Expo CLI。
  • npm install 来安装你的项目依赖项
  • expo login 登录你的Expo账户 ,这是让你的App自动显示在手机上的必要条件。
  • 重要提示:运行expo start --tunnel由于你的代码运行在一个虚拟机上,离你的网络很远很远,所以唯一的方法就是使用隧道,通过Expo给出的URL,在不同的网络上授予你访问权。


React Native应用程序现在已经准备就绪

如果按照刚才的步骤操作,你应该会看到显示在你Expo客户端的App。


就是这样的!

这不是在做梦,你的应用程序正在Github Codespaces上运行。你可以在任何设备上运行它,但你必须要有Github账户。

思考

你能考虑到这一点就很不错了。你可以从浏览器中开发整个跨平台的原生移动应用程序。

6年前,我记得一个朋友对Sublime Text Monokai主题非常感兴趣。这意味着,6年前,当VS Code和React Native都还没有出现时,我们的巨大兴趣便是现代技术开发的前提。

起初,我们的态度是对又一个基于Electron编辑器和一个仅是好的跨平台替代品的担忧。如今,它们都变成了创建移动应用程序的最简单的方式,即都是从浏览器中创建的。

我无法表达我对在如此短的时间内取得的所有进展感到多么兴奋。我甚至自己都没想过在浏览器中编码……这都是真实的吗?

看着 Expo 和 Github 的增长速度,我对未来充满了希望。这是我第一次从浏览器编写整个App,现在我会全力以赴。

注意:我上面提到的这个新应用程序可以帮助你在日常中完成更多任务,它简单且设计精良, 你可以试一试

原文作者 evening kid

原文链接https://eveningkid.medium.com/github-codespaces-for-react-native-61d450db8fc0

推荐阅读
作者信息
AgoraTechnicalTeam
TA 暂未填写个人简介
文章
131
相关专栏
精选文章
82 文章
本专栏仅用于分享音视频相关的技术文章,与其他开发者和 Agora 研发团队交流、分享行业前沿技术、资讯。发帖前,请参考「社区发帖指南」,方便您更好的展示所发表的文章和内容。