首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >在GraphQL中,“边”和“节点”的含义是什么?

在GraphQL中,“边”和“节点”的含义是什么?
EN

Stack Overflow用户
提问于 2017-03-06 18:15:27
回答 2查看 39.8K关注 0票数 138

我使用一个特定的GraphQL端点,虽然我提供了一个干净的JSON结构作为查询,但当我得到结果时,我得到了“边”和“节点”标签。它似乎污染了我的数据,但没有明显的好处。为什么会有它,有没有可能去掉它们,以便更快、更简单地解析数据?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2017-03-06 18:53:08

让我们从简单的单词开始

GraphQl中继规范

用于重新获取object

  • description的
  • 机制,该机制介绍了如何在突变周围分页以使其可预测的

Connections:

pageInfo...

  • pageInfo将包含edgeshasNextPagehasPreviousPagestartCursorendCursor

等元数据的连接是对象的集合

代码语言:javascript
复制
- `hasNextPage` will tell us if there are more edges available, or if we’ve reached the end of this connection.

  • 记录数组: edges

代码语言:javascript
复制
- edges will provide you flexibility to use your data(node) 
- edges will help you for the pagination, There is graphql `GraphQLList` but with no functionality such as pagination, only with array of objects (data)

  • 每条边都有

代码语言:javascript
复制
- a `node`: a record or a data
- a `cursor`: base64 encoded string to help relay with pagination

https://facebook.github.io/relay/graphql/connections.htm

节点:

您可以使用中继connectionArgs(first, last, after, before)设置需要显示的节点数

中继分页作为工作

通过connectionArgs

  • after/before使用
  • 可检索集合中的所有对象并返回基于first/last x记录的切片,用于使用节点

中的游标向GraphQL服务器指示所需切片(数据)的数量

还有很多事情需要考虑,比如nodeDefinitionsglobalFieldIdnodeInterfaces

https://github.com/graphql/graphql-relay-js#object-identification

票数 83
EN

Stack Overflow用户

发布于 2021-11-22 20:09:27

GraphQL是 Query Language的缩写,由服务器端和客户端两部分组成。服务器有效地将图形结构放在您的数据库前面,您的查询将遍历该图形

在计算机科学领域:

  • a is a
  • a

是该网络中的一个顶点<代码>H113边<代码>E114边<代码>E215是节点之间的链接之一<代码>H216<代码>F217

综上所述,GraphQL查询有效地要求GraphQL服务器实例遍历其数据图并找到该数据的某种表示形式。您将在查询中看到edgesnode,因为您实际上是在查看图表中的这些条目。

allXYZ记录的典型查询将如下所示:

代码语言:javascript
复制
{
  _allXYZ {
    edges {
      node {
        // your data shape will be in here
      }
    }
  }
}
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/42622912

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档