Не удается найти имя «Исключить». Аполлон, Графкл - PullRequest
0 голосов
/ 12 сентября 2018

Привет, ребята, у меня проблема.Я пытаюсь включить Apollo в свой проект Angular 6, и когда я хочу запустить свое приложение, я сталкиваюсь с проблемой.Я получаю эту ошибку.

ERROR in node_modules/apollo-angular/types.d.ts(10,58): error TS2304: Cannot find name 'Exclude'.

В lib из tsconfig.json у меня есть:

 "lib": [
  "esnext.asynciterable",
  "es2017",
  "dom",
]

Но я все еще получаю эту ошибку.Что я могу изменить, чтобы запустить свое приложение?

Ответы [ 3 ]

0 голосов
/ 12 сентября 2018

Наткнулся на ту же проблему, но использовал другой подход (хак). apollo-angular, похоже, использует тип «Исключить», который недоступен Angular 6 в параметрах tsconfig.json, поэтому добавление «es5» следующим образом поможет: "lib": [ "esnext.asynciterable", "es5", "es2017", "dom", ]

Если это не сработает, вы можете объявить этот тип в файле node_modules / apollo-angular / types.d.ts напрямую как:

declare type Exclude<T, U> = T extends U ? never : T;

Этот последний вариант является хакерским и будет перезаписан любыми обновлениями npm install или apollo-angular, поэтому используйте его с осторожностью.

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

Я столкнулся с той же проблемой и решил ее, выполнив следующую команду cmd:

npm install typescript@2.9.2 --save-точный

0 голосов
/ 12 сентября 2018

поэтому я обновил машинописную версию до 2.8.1 и теперь она работает.Дело в том, что теперь я получаю предупреждение от angular, потому что у angular ожидается версия <2.8.0, но это всего лишь предупреждение, и я могу это скрыть. </p>

...