我有一个 graphQL ApolloServer 返回一个帐户的分页事务集。这是我的架构的片段:
type Account implements Node {
id: ID!
name: String!
}
type Transaction implements Node {
id: ID!
name: String!
accountId: ID!
}
中继规范https://relay.dev/graphql/connections.htm说返回连接类型的字段可以采用以下参数:1) before
和last
或 2) after
和first
after
这意味着如果不定义默认值或操作,它们就不能都是可选before
的
对于只处理这种after
情况的查询,我会在此之后提出一个 required :
type Query {
accounts: [Account]!
transactions(accountId: ID!,after: String!, first: Int = 10 ): TransactionsBelongToAccountConnection
}
但是对于同时处理before
and的after
情况,我需要将所有这四个参数设为可选,并将其中一种after
或before
模式声明为默认值:
type Query {
accounts: [Account]!
transactions(accountId: ID!, before: Sting, last: Int = 10, after: String, first: Int = 10 ): TransactionsBelongToAccountConnection
}
或者(我的问题是)在graphql中是否有一种方法可以准确地制作所需的两个参数之一?