我无法在Visual Studio代码编辑器上编译this代码。首先,我收到了has no exported member 'X', X for BehaviorSubject, Subject
之类的错误。
所以,我更改了import语句如下:
import { BehaviorSubject } from 'rxjs';
import { Subject } from 'rxjs';
导致导入错误消失。 但是,现在我在尝试使用tsc命令编译时遇到以下错误:
我将emit更改为next,解决了property 'emit' does no exist
错误。但property 'scan' does not exist
错误仍然存在。我认为这与.json文件中的设置有关。但我无法弄清楚应该改变什么设置。
那么,我在这里想念什么?任何帮助深表感谢。如果你得到代码编译,你能描述一下你是怎么做的。
答案 0 :(得分:2)
emit
是一种特定于Angular EventEmitter
的方法,目前依赖于RxJS Subject
。
由于EventEmitter
专门用于处理变更检测,因此不建议将其用作Angular应用程序中的通用主题。
EventEmitter
emit
是主题Subject
next
方法的包装器,因此emit
应替换为next
。
scan
运算符应导入:
import 'rxjs/add/operator/scan';
这已经在链接代码中完成了。