React Native 中的 Expo

Irakli Tchigladze 2023年1月30日
  1. 什么是 React Native 中的 Expo
  2. React Native 中的 Expo CLI (expo-cli)
  3. React Native 中的 Expo 客户端
  4. Expo 和 React Native 的区别
React Native 中的 Expo

智能手机已经成为我们日常生活中不可分割的一部分。与我们每天使用的其他电子产品相比,智能手机技术相对较新。

直到几年前,如果没有扎实的 Java、C++ 或 C# 知识,就不可能创建移动应用程序。React Native 框架的发展已经改变,不再是这样。

如今,可以使用基于 JavaScript 的库(例如 React Native)创建功能强大的智能手机应用程序。

与主要的 React 库一样,React Native 是围绕组件可重用性的概念构建的,以促进复杂应用程序的开发。

什么是 React Native 中的 Expo

React Native 使开发人员能够在需要时使用本机代码。它可以同时是优势和劣势。

使用本机代码使与他人协作和共享你的工作变得困难。如果 React Native 项目包含原生代码,则需要花费更多精力来分享它。

Expo 是专门为解决此问题而创建的一组工具。

这些工具基于一个原则:在开发 React Native 应用程序时尽量减少或消除本机代码的使用。Expo 旨在通过提供各种暴露于 JavaScript 的 API 来实现这一目标。

Expo 提供了两个主要工具;这些是 Expo CLI 和 Expo Client。

React Native 中的 Expo CLI (expo-cli)

expo-cli 是一个命令行应用程序开发人员用来与展览工具进行交互和控制。

开发人员可以使用它来执行广泛的任务,例如:

  1. 创建新项目。
  2. 监督实际开发过程。
  3. 发布应用。
  4. 管理应用商店和游戏商店的登录凭据。

阅读官方文档以了解有关你可以使用的确切命令集的更多信息。

React Native 中的 Expo 客户端

一个方便的应用程序为你的手机。它允许你打开项目并查看正在进行的工作,绕过 XCode 和 Android Studio。

更重要的是,你可以使用它与他人分享你的项目。授权开发人员还可以随时使用 expo 客户端访问已发布的应用程序。

Expo 和 React Native 的区别

简而言之,React Native 是允许开发人员使用 JavaScript 为移动应用程序编写 Native 代码的框架。Expo 是一组促进 React Native 开发的工具。

Expo 不是一个不同的框架,而是一组指南和 API,可帮助开发人员编写易于维护的代码。

在 React 中 React Native 的优势

  1. 使用 React Native(不使用 Expo)进行编写为你作为开发人员提供了更多的自由,尤其是在编写原生代码时。
  2. 你可以包含本机代码。

React 中 React Native 的缺点

  1. Android Studio 和 XCode 是开发必不可少的。
  2. 只能用 iMac 编写 iOS 应用程序。
  3. 只有智能手机通过 USB 连接电脑,才能测试项目。
  4. 导入自定义字体的过程更加复杂。
  5. 启动项目的过程更加复杂。
  6. 共享应用程序只能通过共享整个应用程序文件来实现。
  7. 重要的 API,例如 Push-Notifications 和 Asset Manager,不会自动包含在内。

在 React 中 Expo 的优势

  1. 建立项目的过程更简单。
  2. 更容易在项目上协作。
  3. 应用更容易分享。
  4. 包含重要的 API(如 Push Notifications 和 Asset Manager)。
  5. 如果本机代码对你的应用程序至关重要,你可以在将其弹出到 ExpoKit 后将其包含在内。但是,某些功能将丢失。

React 中 Expo 的缺点

  1. 阻止开发人员编写本机代码。
  2. 阻止开发人员使用包含本机代码的库。
  3. 由于包含库,项目的文件大小比 React Native 大得多。
  4. 一些重要功能(FaceDetector、ARKit)仅在 ExpoKit 中可用。
  5. ExpoKit 不包含 Expo 的一些最重要的特性。
  6. ExpoKit 中的调试是一个漫长的过程。
Irakli Tchigladze avatar Irakli Tchigladze avatar

Irakli is a writer who loves computers and helping people solve their technical problems. He lives in Georgia and enjoys spending time with animals.

LinkedIn

相关文章 - React Native