graphqlKoa не является функцией - PullRequest
0 голосов
/ 16 мая 2018

Я начинаю изучать Javascript на фоне C # и начал создавать простой API-интерфейс GraphQL в качестве моего первого проекта, но я изо всех сил стараюсь, чтобы пример кода работал, и я не уверен, где искать решение.

Я следую за разделом использования здесь: https://www.npmjs.com/package/apollo-server-koa

Но следующая строка выдает ошибку:

router.post('/graphql', graphqlKoa({ schema: ironManSchema }));

TypeError: graphqlKoaэто не функция

Я не уверен, что является причиной этого, это ошибка в примере кода?Проблема с попыткой использовать ES6?Что-то вызвано версией Node.JS, которую я установил?(Обновлен до 10.1.0 на всякий случай) Или, возможно, это потому, что я пытаюсь отладить его в коде Visual Studio.

Ответы [ 2 ]

0 голосов
/ 22 августа 2018

apollo-server-koa не имеет graphqlKoa больше с 2.x.Вы должны использовать 1.x версию.

0 голосов
/ 16 мая 2018

Модуль apollo-server-koa не экспортирует функцию - если бы он это сделал, вы могли бы просто импортировать ее следующим образом:

const graphqlKoa = require('apollo-server-koa')

Вместо этого он эффективно экспортирует объект, одним из его свойств является graphqlKoa, который является функцией. Это означает, что для использования его в вашем проекте вам необходимо выполнить одно из следующих действий:

const apolloServer = require('apollo-server-koa')
const graphqlKoa = apolloServer.graphqlKoa

const graphqlKoa = require('apollo-server-koa').graphqlKoa

const { graphqlKoa } = require('apollo-server-koa')

// ES6 syntax
import { graphqlKoa } from 'apollo-server-koa'

Фигурные скобки в третьем примере - это просто деструктурирующий синтаксис присваивания .

...