Объединение запросов GraphQL - PullRequest
0 голосов
/ 03 марта 2019

Я строю свой первый проект на основе GraphQL, так что извините, если это вопрос новичка.Я организовал свои запросы и мутации следующим образом:

├── graphql
│   ├── lessons
│   │   ├── logic.js
│   │   ├── query.js
│   │   ├── schema.js
│   │   └── types.js
│   ├── schema.js
│   └── users
│       ├── logic.js
│       ├── mutation.js
│       ├── query.js
│       ├── schema.js
│       └── types.js

Это мой users/query.js файл:

const graphql = require('graphql')
const types = require('./types.js')
const logic = require('./logic.js')

module.exports = new graphql.GraphQLObjectType({
  name: 'UserQuery',
  fields: {
    user: {
      type: types.userType,
      args: {
        email: { type: new graphql.GraphQLNonNull(graphql.GraphQLString) }
      },
      resolve: (root, { email }, context) => logic.getUser(email, context)
    }
  }
})

В моем schema.js я объединил запросыusers и lessons согласно следующему коду:

module.exports = new graphql.GraphQLSchema({
  query: new graphql.GraphQLObjectType({
    name: 'RootQuery',
    fields: {
      lessons: { type: require('./lessons/query.js') },
      users: { type: require('./users/query.js') }
    }
  })
})

Теперь проблема в следующем:

{
 users {
    user(email: "a@.a") {
      name,
      purchases
    }
  }
}

производит следующий вывод:

{
  "data": {
    "users": null
  }
}

Я получаю null вместо пользовательской записи.Что я тут не так делаю?

...