无法在 Apollo GraphQL 的查询中使用 @client @export 变量
Posted
技术标签:
【中文标题】无法在 Apollo GraphQL 的查询中使用 @client @export 变量【英文标题】:Unable to use @client @export variable in query in Apollo GraphQL 【发布时间】:2020-04-06 06:29:38 【问题描述】:我只是想使用@client(本地缓存)变量作为我的 apollo 服务器的查询参数。文档引用了@export 指令 (https://www.apollographql.com/docs/react/data/local-state/#querying-local-state)
由于某种原因,我无法做类似的事情
export const GET_COMPANY_DATA = gql`
query GetCompanyData($id: ID!, $name: STRING!)
group @client @export(as: "name")
getCompanyData(id: $id)
company
groups(name: $name)
data
;
两个查询单独工作,例如:
group @client
从本地缓存返回一个字符串
export const GET_COMPANY_DATA = gql`
query GetCompanyData($id: ID!, $name: STRING!)
getCompanyData(id: $id)
company
groups(name: $name)
data
;
返回正确的对象类型
在文档中,他们展示了这个示例,没有参考架构:
const query = gql`
query currentAuthorPostCount($authorId: Int!)
currentAuthorId @client @export(as: "authorId")
postCount(authorId: $authorId) @client
`;
我做错了什么?我觉得我错过了一些基本概念......
【问题讨论】:
【参考方案1】:我想通了;设置 apollo 客户端时,即使没有,也必须添加 resolvers 属性:
const client = new ApolloClient(
cache,
link: authLink.concat(httpLink),
**resolvers: **
);
【讨论】:
以上是关于无法在 Apollo GraphQL 的查询中使用 @client @export 变量的主要内容,如果未能解决你的问题,请参考以下文章
从 ruby gem 导出的 GraphQL 查询无法在 Xcode 项目上使用 Apollo 进行编译
无法将 GraphQL 查询从 Apollo 客户端发送到 Rails GraphQL 后端
无法在单个 GraphQL 查询中组合本地和远程数据(Next.js + Apollo)