使用 Apollo gql 编写 WHERE GraphQL 查询

Posted

技术标签:

【中文标题】使用 Apollo gql 编写 WHERE GraphQL 查询【英文标题】:Write WHERE GraphQL queries with Apollo gql 【发布时间】:2020-08-01 00:44:54 【问题描述】:

在我的 Playground 上运行此查询非常有效:

 query 
    users(where:email_contains: "b") 
      nodes 
        email
        firstName
      
      totalCount
    
  

但我无法将其转换为这种格式以在我的代码中使用 Apollo gql。如何以可以传递任何我想要的变量的方式修复它?连同where

interface Input 
  email: String;
  firstName: String;
  lastName: String;


export const LoadUsersQuery = gql`
  query users(where $email: String!)
    users 
      nodes 
        firstName
        email
      
      totalCount
    
  
`;

从架构中,我知道:

users(
where: UserFilter
): UserConnection
type UserFilter
  email_contains: string
  firstName_contains: string

等等等等

【问题讨论】:

【参考方案1】:

你需要定义类似的东西

 query 
    usersList($email_contains: string) 
      users(email_contains: $email_contains) 
        nodes 
          email
          firstName
        
        totalCount
      
   

查看文档了解更多信息:https://www.apollographql.com/docs/tutorial/queries/。

【讨论】:

以上是关于使用 Apollo gql 编写 WHERE GraphQL 查询的主要内容,如果未能解决你的问题,请参考以下文章