ストリームで発生する最新のイベントを監視しようとしています。各イベントは、列挙型で表される2つのタイプのいずれかになります。しかし、私は、次の例ではコンパイルエラーを取得しています:RXJS Observable enum type、タイプ 'Observable <Type>'はタイプ 'Type'に割り当てられません
import { BehaviorSubject } from 'rxjs/Rx';
export enum FilterAction {
RESET, UPDATE
}
export class FilterSomething {
private _filterEvent: BehaviorSubject<FilterAction> = new BehaviorSubject(FilterAction.RESET);
get filterEvent() {
return this._filterEvent.asObservable(); // <-- behave.ts(14,12): error TS2322: Type 'Observable<FilterAction>' is not assignable to type 'FilterAction'
}
set filterEvent(action: FilterAction){
this._filterEvent.next(action);
}
}
コンパイルエラー:私は、一般的なany
を使用する場合 behave.ts(14,12): error TS2322: Type 'Observable<FilterAction>' is not assignable to type 'FilterAction'
は、しかし、それはコンパイル(と動作します)。
set filterEvent(filterAction: any) {
this._filterEvent.next(filterAction);
}
私はFilterAction
のインスタンスとは対照的に、それは、列挙型の値とは何かだと思います。
14行目はどの行ですか? –
'return this._filterEvent.asObservable(); ' – Matt