加入我们,从10月8日至10日在纽约市,学习关于GraphQL联邦和API平台工程的最新技巧、趋势和新闻。加入我们,参加2024年纽约市的GraphQL峰会
文档
免费开始

项目配置

使用 Apollo iOS SDK 结构化 GraphQL 应用程序


1.0 可以支持由多个模块组成的复杂应用程序 单个模块的应用程序目标。

Apollo iOS SDK 的代码生成引擎和模块化结构为您提供了灵活的配置选项,使您能够根据个人喜好结构化项目。

本文涵盖了 Apollo iOS 生成的 模型、组成 Apollo iOS SDK 的 模块 以及如何在您的项目中结构化这些组件。

生成的模型

Apollo iOS 为您生成以下组文件:

  • 操作模型: 查询、 在您的 GraphQL 文件中定义的模型。
  • 模式类型: 您的 GraphQL 模式
  • 测试模拟: 用于您的模式类型的测试模拟对象,您可以使用它们在测试中创建 模型。

操作模型

Apollo iOS从您定义GraphQL操作(即,查询、mutations、订阅和片段)的文件生成操作模型

模型是代表您的GraphQL操作的类,您可以使用它(通过ApolloClient)来发送GraphQL请求。ApolloClient

每个操作模型都包含一组类型安全的响应模型对象,表示该操作的执行结果。ApolloClient成功执行GraphQL请求时,它返回对应操作的响应模型实例。

要了解更多关于GraphQL操作的信息,请查看定义操作

模式类型

GraphQL方案使用来定义可用的数据的形状。GraphQL操作(以及您生成的操作模型)依赖于模式来了解如何匹配操作以访问服务器数据。

Apollo iOS生成一系列类型,这些类型提供了关于您的GraphQL方案中每个类型的属性和元数据(例如,对象、接口、联合、枚举、输入对象等)。您的生成操作模型引用这些共享方案类型以提供类型信息,无需重复代码。

测试模拟

Apollo iOS允许您生成测试模拟对象,这些对象可以用于您的测试目标。这些模拟允许您为测试创建操作模型。

有关更多详细信息,请参阅测试模拟

项目结构

当将Apollo iOS添加到新项目时,决定如何结构化您的项目是第一步。此步骤的大部分工作是确定生成的GraphQL模型的位置。

您可以将您的GraphQL模型包含在主应用程序目标中,分散到多个模块,或将其公开为独立模块,这样多个应用程序都可以使用。根据项目的需求和限制,您将配置代码生成引擎并链接到Apollo iOS库。

在使用Apollo iOS时,您需要在项目结构上做出三个主要决定:

  1. 您的项目将如何与Apollo在单个目标或多个模块中交互?
  2. 您应该使用哪个moduleType方案?
  3. 您的生成操作模型应位于何处?

在接下来的几页中,我们将涵盖这些问题以及每项选择的可能选项。

上一页
开始
下一页
1. 项目模块化
评分文章评分在GitHub上编辑编辑论坛Discord

©2024Apollo Graph Inc.,商业名称:Apollo GraphQL。

隐私政策

公司