Как использовать пользовательские типы graphQL, импортированные из пакета npm, в apollo's graphql-gql - PullRequest
0 голосов
/ 30 октября 2018

Я не хочу писать свои собственные скалярные типы, я хочу импортировать их из библиотеки. Например, я хочу UnixTimestamp из этого пакета npm - gnt

в моем typeDefs.js Я пытаюсь что-то вроде этого

import { gql } from 'apollo-server-express'
import { UnixDate } from 'gnt'

export default gql`
type vacation {
  from: ${UnixDate}
  to: ${UnixDate}
}
/* other types and queries */
`

Но это не работает. Я получаю Error: Type "UnixDate" not found in document.

1 Ответ

0 голосов
/ 30 октября 2018

Добавление UnixDate к полю таким способом назначает этот скаляр этому конкретному полю и сообщает GraphQL, как обрабатывать его синтаксический анализ, но он явно не добавляет скаляр к самой схеме. Вам все еще нужно добавить скаляр к typeDefs, например так:

export default gql`
  scalar ${UnixDate} /* use template literal placeholder */

  type vacation {
    from: ${UnixDate}
    to: ${UnixDate}
  }
  # Other typeDefs
`
...