如何在Apollo Client中通过本地解析器运行外部查询

时间:2019-10-08 14:03:00

标签: apollo apollo-client apollo-boost

我还有一个问题。在我的服务器上,我有类似的东西:

extend type Query {
  login (input: LoginInput!): Response
}

在客户端上,我正在尝试进行查询:

query Login ($input: LoginInput!) {
  login (input: $input) {
    login @client
  }
}

我有一个解析器:

const login = parent => {
  console.log (`parent`, parent)
}

和:

  resolvers: {Response: {login}}

到目前为止很好。

问题是-解析器日志

{
  __typename: "Response"
}

我实际上没有得到对象(响应)。如果将功能复制到服务器,则会得到它。 useQueryuseMutationuseLazyQuery的行为相同。此外,如果我将login @client更改为success message,那么我都会得到两者,因此似乎没有错字。

是否有一些需要牢记的陷阱(假设Apollo负责,我不在任何地方使用异步),还是我应该提交一个问题,因为它看起来像个bug?

干杯!

1 个答案:

答案 0 :(得分:1)

问题非常简单-我不查询任何字段!

替换

login @client

作者

success
message
login @client