Ошибка TypeScript, Apollo GraphQL: «невозможно назначить» для извлечения узла - PullRequest
0 голосов
/ 17 марта 2020

Я работаю над реализацией сшивания схемы в проекте NodeJS / Apollo / GraphQL, над которым я работаю. Он написан на TypeScript.

Код -

import {
    makeRemoteExecutableSchema,
    introspectSchema,
    mergeSchemas
} from 'graphql-tools';
import { HttpLink } from 'apollo-link-http';
import fetch from 'node-fetch';


export default  async () => {
    const link = new HttpLink({
        uri:'http://localhost:4545',
        fetch
    })
    const remoteSchema = await introspectSchema(link);
    // Make remote executable schema
    return makeRemoteExecutableSchema({
        schema: remoteSchema,
        link
    });

}

, и он жалуется, что

enter image description here.

Ссылочный раздел файла типов:

export interface HttpOptions {
    uri?: string | UriFunction;
    includeExtensions?: boolean;
    fetch?: WindowOrWorkerGlobalScope['fetch'];
    headers?: any;
    credentials?: string;
    fetchOptions?: any;
}

Кажется, это ошибка , которая была исправлена ​​, но здесь она не исправлена, хотя Я использую последние версии, и строка

fetch?: WindowOrWorkerGlobalScope['fetch'];

, кажется, является тем, что рекомендуется для одного из обходных путей, следовательно, оно должно быть исправлено.

Что бы это ни стоило, мои package.json -

{
  "dependencies": {

    "apollo-datasource-graphql": "^1.3.2",
    "apollo-datasource-rest": "^0.7.0",
    "apollo-link-http": "^1.5.16",
    "apollo-server": "^2.10.1",
    "axios": "^0.19.2",
    "dotenv": "^8.2.0",
    "graphql": "^14.6.0",
    "graphql-tools": "^4.0.7",
    "https-proxy-agent": "^5.0.0",
    "node-fetch": "^2.6.0",
    "uuid": "^7.0.1"
  },
  "devDependencies": {
    "@types/node": "^13.9.1",
    "@types/ramda": "^0.26.43",
    "babel-eslint": "^10.0.3",
    "eslint": "^6.8.0",
    "eslint-config-airbnb-base": "^14.0.0",
    "eslint-config-prettier": "^6.10.0",
    "eslint-plugin-prettier": "^3.1.2",
    "pino": "^5.16.0",
    "prettier": "^1.19.1",
    "ramda": "^0.26.1",
    "typescript": "^3.8.3"
  },
  "scripts": {
    "dev": "tsc && node dist/index.js"
  }
}

Любые подсказки очень ценятся!

1 Ответ

1 голос
/ 30 апреля 2020

Использование перекрестная выборка решит проблему.

...