如何将RxJ的主命名空间“ rxjs”导入TypeScript?

时间:2018-06-25 21:41:49

标签: typescript rxjs

我正在用Typescript创建简单的应用程序。我想在其中使用RxJ。通常在浏览器中,正如RxJ的文档所述,如果我使用CDN,则我将在全局范围内使用rxjs名称空间。然后我就有可能通过这种方式分解它:

const { fromEvent } = rxjs;

...就是要使用它(例如fromEvent(button, 'click').pipe(...)等)。当我编写用于电子的桌面应用程序时,我通过npm install rxjs安装了rxjs。在这里我被困住了。无论我尝试以哪种方式将其导入到.ts文件,都会导致出现诸如“类型(...)没有属性/没有从event中导出成员”之类的错误。我尝试过:

  • 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中编写的代码相同的代码?

0 个答案:

没有答案