零、前言

React Native 帮助 web 和移动开发人员为 iOS 和 Android 应用构建与任何其他本机开发的应用具有相同性能的应用。使用此库可以构建的应用范围非常广泛。从电子商务到游戏,React Native 由于其灵活性和可扩展性,非常适合任何移动项目。它具有良好的性能,重用 React 知识,能够导入 npm 包,并且在 iOS 和 Android 上使用相同的代码库。毫无疑问,React Native 不仅是本机开发的一个很好的替代方案,而且是将 web 开发人员引入移动项目的一个很好的方式。本书旨在让 JavaScript 和 React 开发人员了解如何使用 React Native 从头开始构建市场上最流行的应用。我们将在 iOS 和 Android 上构建所有应用,除了那些应用只在其中一个平台上有意义的情况。

这本书你需要什么

本书中构建的大多数应用都将在 Android 和 iOS 上运行,因此需要一台运行 Linux、Windows 或 OSX 的计算机,尽管我们建议任何一台苹果计算机(运行 OSX 10 或更高版本)同时运行这两个移动平台,因为有些示例需要在 XCode 上工作,而 XCode 只能在 OSX 上安装。

我们将在示例中使用的其他软件包括:

  • XCode
  • 安卓工作室
  • 反应就绪的 IDE(如 Atom、VS 代码和 SublimiteText)

当然,我们需要安装 React-Native 和 React-Native CLI(https://facebook.github.io/react-native/docs/getting-started.html )。

这本书是给谁的

本书的目标是 JavaScript 开发人员,他们试图了解如何使用 React Native 构建不同类型的应用。他们将找到一套最佳实践和经验证的体系结构策略,可用于构建任何类型的应用。

尽管本书中不会解释 React 的一些基本概念,但由于我们不会深入研究复杂的 React 模式,因此不需要具体的 React 技能。

习俗

在本书中,您将发现许多文本样式可以区分不同类型的信息。下面是这些风格的一些例子,并解释了它们的含义。

文本中的代码字、数据库表名、文件夹名、文件名、文件扩展名、路径名、虚拟 URL、用户输入和 Twitter 句柄如下所示:“我们必须创建一个src文件夹,在其中存储所有代码。”

同样,在大型代码块中,当某些代码片段不相关或在不同的位置被审阅时,它们将被省略号(…)替换。

代码块设置如下:

/*** index.js ***/

import { AppRegistry } from 'react-native';
import App from './src/main';
AppRegistry.registerComponent('GroceriesList', () => App);

任何命令行输入或输出的编写方式如下:

react-native run-ios

新术语重要词语以粗体显示。您在屏幕上(例如,在菜单或对话框中)看到的单词会出现在文本中,如:“添加产品屏幕上的后退按钮。”

Tips and important notes appear in a box like this. Tips and tricks appear like this.

读者反馈

我们欢迎读者的反馈。让我们知道你对这本书的看法——你喜欢或不喜欢什么。读者反馈对我们很重要,因为它可以帮助我们开发出您真正能从中获得最大收益的标题。要向我们发送一般反馈,只需发送电子邮件feedback@packtpub.com,并在邮件主题中提及该书的标题。如果您对某个主题有专业知识,并且您有兴趣撰写或贡献一本书,请参阅我们的作者指南www.packtpub.com/authors

客户支持

既然您是一本 Packt 图书的骄傲拥有者,我们有很多东西可以帮助您从购买中获得最大收益。

下载示例代码

您可以从您的帐户下载本书的示例代码文件 http://www.packtpub.com 。如果您在其他地方购买了本书,您可以访问http://www.packtpub.com/support 并注册,将文件直接通过电子邮件发送给您。您可以通过以下步骤下载代码文件:

  1. 使用您的电子邮件地址和密码登录或注册我们的网站。
  2. 将鼠标指针悬停在顶部的“支持”选项卡上。
  3. 点击代码下载和勘误表。
  4. 在搜索框中输入图书的名称。
  5. 选择要下载代码文件的书籍
  6. 从您购买本书的下拉菜单中选择。
  7. 点击代码下载。

下载文件后,请确保使用以下最新版本解压或解压缩文件夹:

  • WinRAR/7-Zip for Windows
  • 适用于 Mac 的 Zipeg/iZip/UnRarX
  • 适用于 Linux 的 7-Zip/PeaZip

该书的代码包也托管在 GitHub 上的https://github.com/PacktPublishing/React-Native-Blueprints 。我们在上还提供了丰富的书籍和视频目录中的其他代码包 https://github.com/PacktPublishing/ 。看看他们!

下载本书的彩色图像

我们还为您提供了一个 PDF 文件,其中包含本书中使用的屏幕截图/图表的彩色图像。彩色图像将帮助您更好地了解输出中的更改。您可以从下载此文件 https://www.packtpub.com/sites/default/files/downloads/ReactNativeBlueprints_ColorImages.pdf

勘误表

虽然我们已尽一切努力确保内容的准确性,但错误确实会发生。如果您在我们的一本书中发现错误,可能是文本或代码中的错误,如果您能向我们报告,我们将不胜感激。通过这样做,您可以使其他读者免于沮丧,并帮助我们改进本书的后续版本。如果您发现任何错误,请访问进行报告 http://www.packtpub.com/submit-errata ,选择您的书籍,点击勘误表提交表单链接,然后输入勘误表的详细信息。一旦您的勘误表得到验证,您的提交将被接受,勘误表将上载到我们的网站或添加到该标题勘误表部分下的任何现有勘误表列表中。

要查看之前提交的勘误表,请转至https://www.packtpub.com/books/content/support 并在搜索字段中输入图书名称。所需信息将出现在勘误表部分下。

盗版行为

在互联网上盗版版权材料是所有媒体都面临的一个持续问题。在 Packt,我们非常重视版权和许可证的保护。如果您在互联网上发现任何形式的非法复制品,请立即向我们提供地址或网站名称,以便我们采取补救措施。

请致电copyright@packtpub.com与我们联系,并提供可疑盗版材料的链接。

我们感谢您在保护我们的作者方面提供的帮助以及我们为您带来有价值内容的能力。

问题

如果您对本书的任何方面有任何问题,可以通过questions@packtpub.com与我们联系,我们将尽力解决该问题。