如何使用 Apollo Client 虚拟字段

Posted

技术标签:

【中文标题】如何使用 Apollo Client 虚拟字段【英文标题】:How to use Apollo Client virtual fields 【发布时间】:2020-10-24 01:43:34 【问题描述】:

我无法理解如何设置虚拟字段和/或使用 Apollo 客户端和我的 graphql API (Appsync) 进行模拟。

我在这里https://codesandbox.io/s/stoic-johnson-rkgmg?file=/src/EventList.js 创建了一个代码框。这是一个演示项目,其中使用连接到 graphql 端点的 Apollo 客户端获取事件列表。

我正在做教程https://www.apollographql.com/docs/tutorial/local-state/#adding-virtual-fields-to-server-data 中描述的所有事情,并尝试将虚拟字段“isRegistered”添加到模式类型事件中。

如果您注释掉 EventList.js 第 11 行,您可以看到数据(事件列表)被很好地获取,但是一旦我尝试获取我的虚拟字段(重新添加第 11 行),我就没有得到任何数据(也没有错误)。

如果有人能告诉我我做错了什么,我将不胜感激。

谢谢,

【问题讨论】:

【参考方案1】:

我从 Apollo Client 构造函数中删除了 addtypename:false,它现在可以正常工作了。 任何寻找 Appsync 虚拟字段示例的人都可以查看沙箱 https://codesandbox.io/s/stoic-johnson-rkgmg?file=/src/EventList.js

【讨论】:

以上是关于如何使用 Apollo Client 虚拟字段的主要内容,如果未能解决你的问题,请参考以下文章

如何使用 Apollo 工具为查询生成 Typescript 类型,包括 Apollo @client 和 @rest 指令?

angular, apollo-client, graphQL - 从 graphql 查询中选择所有字段

如何使用 Apollo Client for iOS 读取结果

安装@apollo/client 后无法解析主模块字段

如何在 Apollo Client React 中获取多个条件查询?

如何与另一个查询共享缓存的 apollo-client 数据