- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我已经定义了 graphql-java 实现和模式。是否可以在 GraphQL 查询中创建 GraphQLList(SomeGraphQLObjectType) 类型的字段并在 Relay.QL {} 声明片段中使用它,以便我可以接收所需对象的列表?这是中继“连接”工作的地方吗?
export default Relay.createContainer(ChildComponent, {
fragments: {
item: () => Relay.QL`
fragment on Item
{
id,
name,
color{
id,
name
}
}`
}});
export default Relay.createContainer(ParentComponent, {
fragments: {
list: () => Relay.QL`
fragment on ListOfItems{
allItems
{
${ChildComponent.getFragment('item')}
}
}`
}
});
最佳答案
Is it possible to create a field of type GraphQLList(SomeGraphQLObjectType) in a GraphQL query and use it in a Relay.QL {} declaration fragment?
是的,在 @relay(plural: true)
的帮助下这是可能的指示。它告诉 Relay 该字段是一个列表,而不是单个项目。
像这样定义字段,其中 Item
是具有相同名称
的 GraphQLObjectType:
itemList: {
type: new GraphQLList(Item),
// other stuff including resolve function
},
由于您已将 Relay 容器划分为父容器和子容器,因此定义父容器如下:
export default Relay.createContainer(ParentComponent, {
fragments: {
itemList: () => Relay.QL`
fragment on Item @relay(plural:true) {
${ChildComponent.getFragment('item')}
}
`,
},
});
子容器如下:
export default Relay.createContainer(ChildComponent, {
fragments: {
item: () => Relay.QL`
fragment on Item {
id,
name,
color {
id,
name,
}
}
`,
},
});
您可以在this article中了解有关中继指令的更多信息。作者:克莱·奥尔索普。
有一个similar question您也可以看一下。
Is this the place where Relay "Connections" work?
这要看情况。如果您不希望一次完成所有项目,那么连接就是最佳选择。它允许增量获取数据。
关于java - 如何为GraphQLObjectType的GraphQLList定义Relay片段?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41146840/
假设我有以下代码作为 graphql 架构。 userType 包括用户的 id 和 name,并且有两种查询:allUsers: [userType] 和用户(id:Int!):用户类型。 let
我正在使用 express-graphql以及以下查询: invitations { sent received } 模式定义(简化)如下: const InvitationType
对于我的 MongoDB 对象,我有一个架构,其中有很多嵌套数据。 但是我在 GraphQL 中完美地实现了获取数据的查询,但是我无法获取嵌套数据,因为我无法定义类型。 fields() {
我浏览了 GraphQL 的 Object Types教程,然后通读 Constructing Types文档的一部分。我通过创建一个简单的 case convention converter 进行了
我想返回类 A 的列表来 self 的 GraphQLDatafetcher 的对象。我知道我可以退单A像这样: GraphQLObjectType a = GraphQLAnnotations.ob
可能标题不适合我的问题,但让我解释一下我的情况。我正在使用 Graphql 模式。这是我的初始 schema.js 文件 https://github.com/sany2k8/graphql-udem
我正在使用 graphql npm 包来构建一个 graphql 模式,其中包含如下所示的突变: type Mutation { cxUnitCosts_onSave(data: [CxUnitC
我想学习 GraphQL,并且正在编写一个代表书店的示例,用户可以在其中成为多本书的作者。 我的问题是我无法在 UserType (GraphQLObjectType) 中定义“BookType”类型
我是 graphql 新手,所以我遇到了一些问题。基于nodeJS的服务器,带有express包。我正在用 GraphQLObjectType 表示法编写 Apollo Graphql 的模式。当我想
我是 Graph Ql 的初学者。但我正在尝试使用 Node 创建一个 grapghql 服务器并表达如下... const graphql = require('graphql'); const _
我正在尝试使用 Gatsby 从 GraphQL 查询数据。我按照 Gatsby's 说明使用 GraphQL 查询页面中的数据,但是,我一直收到错误消息。 错误(这是我需要修复的,而不是下面的示例)
我正在开发 GraphQL 的演示项目。却被困在这里。我想将整个对象作为结果发送。我要发送的对象是: exports.fakeDatabase = { 1: {
在服务器启动时 (node index.js) 我的 GraphQL NodeJS 服务器出现以下错误: Error: Query.payment(data:) argument type must
我是一名优秀的程序员,十分优秀!