与 Apollo GraphQL 订阅返回值反应

Posted

技术标签:

【中文标题】与 Apollo GraphQL 订阅返回值反应【英文标题】:React with Apollo GraphQL subscriptions return value 【发布时间】:2018-12-16 01:50:10 【问题描述】:

我正在使用 Apollo GraphQL,并且正在努力降低 pubsub 的发布方面。这是我所拥有的:

发布:

    const tst =  string1: 'hi', string2: 'hello' ;

    pubsub.publish("sub", tst);

GraphQL 订阅

subscription ($Id: Int!) 
   test(Id: $Id)
      string1
      string2
   

当我在 graphiql 中尝试此操作时,它只返回 [Object] [Object],这表明我出了点问题。虽然我找不到错误代码。如果我把这两个改成这样:

发布:

pubsub.publish("sub", tst: 'hi');

GraphQL 订阅

subscription ($Id: Int!) 
   test(Id: $Id)

当发布被触发时,GraphiQL 将返回“hi”。为什么我不能返回第一个设置?

编辑

这是架构:

type Test 
    string1: String
    string2: String

这是订阅模式

test(Id: Int!): Test

【问题讨论】:

你有匹配的 GraphQL 架构吗? test这个字段是什么类型的? @DavidMaze 我把它添加到上面的问题中 【参考方案1】:

找到我的答案。我发布错误。

它应该在选项参数中使用 test 而不是 tst:

pubsub.publish("sub",  test: tst );

【讨论】:

以上是关于与 Apollo GraphQL 订阅返回值反应的主要内容,如果未能解决你的问题,请参考以下文章

Apollo - Angular 应用程序中子组件的多个 graphql 订阅

如何在 Apollo 中关闭 GraphQL 订阅的套接字连接

如何将数据从反应组件传递到 Apollo graphql 查询?

Apollo GraphQL - 订阅响应中不包含相关类型

我可以在不使用 Apollo 的情况下使用 graphql 进行反应吗?

如何在客户端 NextJS 中使用 Apollo GraphQL 订阅?