Graphql订阅-“订阅”字段必须返回“异步可迭代”。收到:使用withFilter时未定义

时间:2019-12-10 19:40:17

标签: javascript websocket graphql

我有一个使用graphql订阅进行聊天的应用程序。我成功引入了withFilter函数,以便过滤将消息发送给哪些客户端,从而成功地使订阅正常工作。我在前端收到以下错误:

  

订阅字段必须返回异步可迭代。收到:未定义

这是我的订阅解析器:

const { PubSub, withFilter } = require('graphql-yoga');

const pubsub = new PubSub();
pubsub.ee.setMaxListeners(30);

const Subscription = {
  detailedConversation: withFilter(
    () => pubsub.asyncIterator('detailedConversation'),
    (payload, args) => {
      return true;
    }
  )
};

module.exports = {
  Subscription,
  pubsub
};

由于withFilter的第二个参数必须是一个返回布尔值的函数,因此我刚刚将其设置为暂时返回true。

Graphql-yoga在后台使用了graphql-subscriptions,在阅读了有关实现here的文档后,我看不到我在做什么错了吗?

仅供参考,该错误是在尝试首次订阅对话时发生的,而不是在发送消息或其他内容时发生的

0 个答案:

没有答案