ApolloGraphQL每个文档都返回整个子文档集合。
创始人
2024-09-09 10:00:35
0

可以在schema中定义Resolver,通过Projection选择与查询的字段保持一致的子文档。例如,假设我们有一个user集合,每个用户都有一个地址子文档集合,我们可以定义如下Resolver:

Query: {
  users: (_, args, { db }) => {
    return db.collection('users').find().toArray()
  },
},
User: {
  addresses: (parent, _, { db }, info) => {
    const projection = Object.keys(info.fieldNodes[0].selectionSet.selections[0].selectionSet.selections[0].selectionSet.selections[0].selectionSet.selections[0].selectionSet).reduce((acc, current) => { // 通过Projection选择保留的字段
      acc[current] = 1
      return acc
    }, {})
    return db.collection('addresses').find({ userId: parent._id }).project(projection).toArray()
  },
}

在这个例子中,我们在users Query中返回所有的用户,然后在User Resolver中选择与查询的addresses字段保持一致的子文档。通过projection,我们只返回与查询保持一致的字段,从而避免了返回整个子文档集合的问题。

相关内容

热门资讯

热点推荐!闲逸碰胡有外挂,广东... 热点推荐!闲逸碰胡有外挂,广东雀神麻雀辅助器下载,wepoke教程(有挂猫腻)1、许多玩家不知道闲逸...
今日科普!德州ai人工智能(辅... 今日科普!德州ai人工智能(辅助挂)外挂透视辅助工具(2020已更新)(哔哩哔哩)1、起透看视 德州...
透视透明(微扑克外挂)软件透明... 微扑克外挂高级策略深度解析‌;透视透明(微扑克外挂)软件透明挂辅助插件(透视)软件透明挂(2025已...
玩家必看分享!德州扑克辅助器免... 玩家必看分享!德州扑克辅助器免费版下载安装(透视辅助挂)-的确是真的有挂(2025已更新);亲,这款...
三分钟攻略!好友赣南斗牛外挂,... 三分钟攻略!好友赣南斗牛外挂,星悦跑胡子辅助软件,透明挂教程(有挂教学),亲,有的,ai轻松简单,又...
玩家必看教程!pokernoe... 玩家必看教程!pokernoew透视挂(透视辅助挂)-原来是真的有挂(2023已更新);pokern...
科技介绍!八闽掌上麻将有挂,广... 1、科技介绍!八闽掌上麻将有挂,广东雀神小程序打才能赢,普及教程(真是有挂)。2、八闽掌上麻将有挂透...
实操分享!pokerx智能软件... 1、实操分享!pokerx智能软件(辅助挂)外挂透视辅助挂(2020已更新)(哔哩哔哩)。2、pok...
最新技巧(扑克世界)外挂辅助器... 最新技巧(扑克世界)外挂辅助器安装(透视)辅助透视(2020已更新)(哔哩哔哩);人气非常高,ai更...
揭秘真相!sohoo poke... 揭秘真相!sohoo poker破解(透视软件挂)-其实是真的有挂(2022已更新);亲,这款soh...