【发布时间】:2023-04-01 17:10:02
【问题描述】:
有一个
- 查询播放器和
- 订阅playerJoinedTable。
两者都应该返回 PlayerType 并且都接收具有属性 profileId 的对象。
PlayerType 具有属性 profile 和解析器:
profile: {
type: ProfileType,
resolve: (obj, args, {db}) => {
return db.collection('profiles').findOne({_id: ObjectID(obj.profileId)})
}
}
当服务器被要求查询 player 时,它会返回 player 表中的两个字段和带有配置文件字段的 profile 对象。
但是在下面订阅时:
playerJoinedTable: {
type: PlayerType,
resolve: payload => payload,
subscribe: () => pubsub.asyncIterator('playerJoinedTable')
被执行,服务器只返回玩家的自己的字段而不执行配置文件的解析器。
知道为什么订阅不执行嵌套解析器吗?
【问题讨论】:
标签: graphql graphql-js graphql-subscriptions