我有一个名为Store的类,它将状态类型作为泛型。
class Store<T> {
}
当我需要扩展商店时,我正在做类似的事情:
interface State {
entities: { [id: string] : Todo }
}
class Todos extends Store<State> {
}
但现在我想在我的商店中添加一个返回实体的方法。
class Store<T> {
private _store: BehaviorSubject<T>;
constructor(initialState) {
super();
this._store = new BehaviorSubject(initialState);
}
getEntities() {
return this._store.map(state => state.entities);
}
}
在这种情况下,如何定义Todo类型的getEntities
的返回类型?
答案 0 :(得分:2)
您可以像在类声明中定义泛型类型一样定义getEntities泛型返回类型:
getEntities() : BehaviorSubject<T> {
return this._store.map(state => state.entities);
}