我要遵循RxJS的说明:
https://rxjs-dev.firebaseapp.com/guide/installation
我执行以下操作
cd
进入目录并调用npm init
,使用
npm的所有默认设置import Rx from 'rxjs/Rx';
放入文件test.ts tsc test.ts
我收到一条错误消息:
node_modules/rxjs/internal/Observable.d.ts:82:59 - error TS2693: 'Promise' only refers to a type, but is being used as a value here.
82 toPromise<T>(this: Observable<T>, PromiseCtor: typeof Promise): Promise<T>;
~~~~~~~
如何正确执行此操作?
评论后编辑:
在Introduction page上提到了另一个示例:
const { fromEvent } = rxjs;
const button = document.querySelector('button');
fromEvent(button, 'click')
.subscribe(() => console.log('Clicked!'));
这不能是要提供给tsc
的完整文件。我收到错误消息:
fl.ts:1:23 - error TS2304: Cannot find name 'rxjs'.
1 const { fromEvent } = rxjs;
~~~~
此外,添加import 'rxjs'
后,仍保留相同的错误消息。
如何完成文件?
答案 0 :(得分:0)
您必须创建一个包含以下选项的tsconfig.json
文件:
{
"compilerOptions": {
"target": "es5",
"lib": ["es2015", "dom"]
}
}
之后,您只需在终端中运行tsc
(不带文件名)。它将在可以与test.js
执行的同一目录中创建一个node test.js
文件。
我的test.ts文件如下:
import { of } from 'rxjs';
const source = of('demo value');
source.subscribe(value => {
console.log(value);
});