刚刚完成我的第一个 React 原生应用,这是我学到的东西

刚刚完成我的第一个 React 原生应用,这是我学到的东西

原文:https://medium.com/hackernoon/just-completed-my-first-react-native-app-here-is-what-i-learnt-5ecb8a63b703

关于构建 React 本机应用程序的思考和发现

Just me showing the product, in the background

如果你读过我上一篇关于 React Native 的文章,你可能会意识到我对这个平台做了一些大胆的陈述。上次我尝试了一下 React Native,但并没有真正写出一个成品。

这一次,我真的进去写了一个完整的计算器应用程序,在我的 iPhone 和 Androids 上测试并部署了它。试试这里。

[## 世博会计算器

@rajat1saxena 使用 Expo 创建了计算器

世博会](https://expo.io/@rajat1saxena/react-native-calculator)

嘶!你需要下载一个 应用 在你的设备上运行我的体验。

以下是我在构建 React 原生应用时学到的一些东西,即create-react-native-app方法。

1.全程使用 JavaScript

尽管 React Native 声称支持本机模块,但是如果你按照脸书推荐的方式创建一个新的 React Native(RN)项目,你最终会使用create-react-native-app命令创建一个新项目。

这实际上创建了一个 100% JS 的 Expo 项目,并且不支持在您的 iOS 或 Android 应用程序中加载原生模块。虽然你可以随时弹出

2.你不需要 XCode 或 Android Studio

如果你的应用不使用 iOS/Android API 做任何复杂的事情,你使用create-react-native-app构建的项目就足够了,你不需要在你的系统上安装任何推荐的 IDE 和它们相应的重型工具。

你写一些 JavaScript,反应风格,并在开发模式下测试应用程序,就在你的手机上。就这么简单。

我在一台 10 年前的笔记本电脑上建立了这个项目。它可以运行 Android Studio,但当它运行时,速度非常慢。

3.它实际上是如何工作的。

它的工作方式是,在开发期间,您的应用程序的 JavaScript 被捆绑到一个包中,然后由运行在您的开发机器上的开发服务器提供服务。你在 Expo app 中扫描或输入网址,它就会加载资源。

对于生产,单独的 iOS 和 Android 捆绑包被构建。 免责声明 :我真的不知道底层 JS 代码相同的情况下为什么还需要构建两个独立的包。构建完成后,这些包会上传到 CloudFront,您会得到一个唯一的应用 URL。

你把这个网址分发给你的朋友。当他们打开你的应用程序时,驻留在 CloudFront 上的 JS 包就会被提供。这就是我对它如何在后台工作的理解。

4.你可以构建独立的 iOS 和 Android 应用

您使用 RN 的原因可能是代码共享和原生二进制文件,对吗?当然你可以获得.apk.ipa文件,你可以将它们上传到各自的应用商店。

但是我认为它只是一个从 CloudFront 加载一些 JS 的应用包装器。

您使用他们的服务器开始在云中构建流程。构建完成后,您会得到一个下载您的.apk.ipa文件的 URL,您可以将它上传到应用商店。

是的。在构建本机应用程序时,您也可以使用自己的密钥库或分发证书。如果你不知道这些是什么,世博会可以为你处理。

5.iPhone 上的开发更快

我用 iPhone 6s、Nexus 5X 和 Moto-G(第一代)进行开发。虽然 Nexus 5X 和 iPhone 6s 的规格相互竞争,但当我使用 iPhone 时,这个项目实际上构建得更快。

在 iPhone 上加载应用程序的情况下,react-native打包器也运行得更快。我不知道为什么会这样,但这就是我的发现。

“摇动显示开发者菜单”在 Moto-G (Android Lollipop)上不起作用,但在 Nexus 5X (Android 7.1)上有效。对于调试器 ui 来说也是如此。

所以,你们走吧。如果你有更多的问题,请在这个帖子上留下你的评论,我会尽我最大的努力来回答。

此外,我还开源了这个应用程序,让其他人也能看到。我计划做一个关于如何建立这样一个应用程序的短视频/文本教程。所以,也许,如果你有兴趣获得同样的更新,你可以跟我来。

源代码在这里:

[## rajat 1 saxena/react-native-calculator

这是一个用 React Native 构建的简单计算器

github.com](https://github.com/rajat1saxena/react-native-calculator)

如果你喜欢这篇文章,请将它推荐给你的社交网络,并关注我以获得更多类似的文章。如果你喜欢开发数字化的东西,你也应该订阅我的 YouTube 频道。

推特 | YouTube | 瑞恩工作室

直到下一次…


本站为非盈利网站,作品由网友提供上传,如无意中有侵犯您的版权,请联系删除