GraphQL与Apollo Client在React应用中的实践
1. GraphQL与Apollo Client基础概念
在深入探讨数据依赖和突变之前,先来了解一些GraphQL和Apollo Client的基本术语和定义:
|术语|定义|
| ---- | ---- |
|GraphQL|一种用于指定数据需求和数据突变的查询语言。|
|Apollo Client|一个管理应用程序数据获取和数据突变的库,提供高阶组件和钩子,支持React Hooks并自带缓存功能。|
|Query|数据依赖的一部分,用GraphQL语法表示,由封装的Relay机制执行。|
|Fragment|更大的GraphQL查询的一部分。|
|Mutation|一种特殊的GraphQL查询,用于改变远程资源的状态,Apollo Client需要在操作完成后在前端反映这些变化。|
|Subscription|用于服务器和客户端应用之间实时事件的GraphQL类型,如通知或聊天消息。|
2. 声明式数据获取
GraphQL是一种查询语言,允许你通过查询结构定义API响应的样子,这是一种比其他API更具声明性的数据获取方法。它不仅是查询语言,还提供运行时以根据现有数据满足查询需求。使用GraphQL时,用于数据获取的API应支持GraphQL,即服务器需要有一个描述允许操作(查询、突变或订阅)和可请求数据字段的模式。向GraphQL服务器发送包含操作的文档即可执行模式中描述的操作,与REST API不同,你可以完全控制数据的形状。
下面通过一个例子展示GraphQL查询的工作方式。如果要显示用户的名字和姓氏
超级会员免费看
订阅专栏 解锁全文
585

被折叠的 条评论
为什么被折叠?



