Как импортировать основное пространство имен RxJ 'rxjs' в TypeScript? - PullRequest
0 голосов
/ 26 июня 2018

Я создаю простое приложение в Typescript.Я хотел бы использовать RxJs в нем.Обычно в браузере, как говорят документы для RxJ, если бы я использовал CDN, у меня было бы пространство имен rxjs, доступное в глобальной области видимости.Тогда у меня будет возможность разложить его таким образом:

const { fromEvent } = rxjs;

... и это все, что нужно (например, fromEvent(button, 'click').pipe(...) и т. Д.).Поскольку я пишу приложение для настольного использования (с электронным), я установил rxjs через npm install rxjs.И вот я застрял.Независимо от того, каким образом я пытаюсь импортировать его в мой файл .ts, это приводит к ошибкам типа «Тип (...) не имеет свойства / нет экспортируемого члена fromEvent» или подобному.Я пытался:

  • import * as rxjs from 'rxjs';
  • import { rxjs } from 'rxjs';
  • import { rxjs } from 'rxjs/Rx';
  • import { fromEvent } from 'rxjs';
  • import { fromEvent } from 'rxjs/Rx';
  • import { fromEvent } from 'rxjs/fromEvent';

но ни один из них не работал.Я также попробовал declare var rxjs, и это сработало, но на самом деле какой смысл использовать статически типизированный язык, если мы теряем таким образом всю информацию о типах и не можем использовать проверку типов (насколько я исследовал, сам RxJs написан на Typescript, поэтому не должно быть проблем с импортом всей информации о типах)?

Может быть, это глупый вопрос, и я должен полностью изменить свой образ мышления, если это так - пожалуйста, поправьте меня, но как можноИмпортировать rxjs пространство имен в машинописный текст?Чтобы я мог написать тот же код, что и в .js в браузере?

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