我正在尝试在我正在编写的 TypeScript 应用程序中使用 RxJs 定义。我导入了 defs,现在我正在尝试新的主题。
this.stream = new Rx.Subject();
但是,当我尝试此操作时,出现以下错误。
错误 6 属性 'Subject' 不存在于类型 '{ Internals: { inherits(child: Function, parent: Function): Function; addProperties(obj: Object, ...source: Object[]): void; addRef(xs: Rx.IObservable, r: { getDisposable(): Rx._IDisposable; }): Rx.IObservable; }; 观察者: { create(onNext: (value: any) => void, onError?: (exception: any) => void, onCompleted?: () => void): Rx.IObserver; fromNotifier(handler: (notification: Rx.INotification) => void): Rx.IObserver; }; }
当我查看类型定义时,我可以看到 Subject 类已被定义为接口
export interface Subject {
(): ISubject;
create(observer: IObserver, observable: IObservable): ISubject;
}
有人可以告诉我如何创建这个 Subject 类的实例,因为我找不到办法。当前使用 TS 9.1.1。我认为(): ISubject可能会这样做,但似乎没有任何影响。
我知道一些建议是定义一个类,但是我需要从基接口实现所有方法,所以这将是巨大的,因为它继承自 IObservable。