在我的有角项目中,我有以下服务:
@Injectable({ providedIn: "root"})
export class NameDataService {
private _name$: Subject<Name[]> = new Subject();
private _nameObs$: Observable<Name[]>;
constructor() {
this._nameObs$ = this._name$.asObservable();
}
get names$(): Observable<Name[]> {
return this._nameObs$;
}
set names$(val: Name[]) {
this._name$.next();
}
}
基于上述感冒,将出现以下错误:'get' and 'set' accessor must have the same type.
我检查了一些类似的帖子,但仍然无法理解该错误。 same type
在这里是什么意思? get / set函数的类型声明?以及如何解决我的情况?
编辑:根据评论,我弄清楚了为什么会发生错误,事实证明set方法的参数类型必须与get方法的返回值类型相同。
这意味着在我的情况下,set方法必须接收Observable<Name[]>
。
但是在我的情况下如何使用它。我想使用“主题/可观察的”进行数据存储。