Rob*_*t28 2 observable rxjs typescript angular
我意识到 StackOverflow 上有几个与此相关的问题,我仍在努力解决这些问题。
我正在尝试访问行为主体的价值观,但显然还没有足够的理解来实现这一点。我已经阅读了 rxjs 文档和各种其他来源。我尝试过创建一个新的 BehaviourSubject、使用 next、订阅它等。还尝试使用管道和映射来映射它。
this.theService.items$
Run Code Online (Sandbox Code Playgroud)
是一个可观察-行为主题,它有一个私有字段 _values,我试图访问但无法访问。然后将其投影到一个变量,以便我可以访问字段值并在我的组件中使用。
items$ 是一个获取可观察对象的 getter
private _items$ = new BehaviorSubject<T[]>([]);
get items$() {
return this._items$.asObservable();
}
Run Code Online (Sandbox Code Playgroud)
我想要这样的东西,老实说,我没有根据其 id 找到项目
public model: IModel;
this.theService.items$.pipe(
map(items => <IModel>items.find(item => item.ID === this.id))).subscribe(item => {
this.model = item
});
Run Code Online (Sandbox Code Playgroud)
任何指示将不胜感激。
如果你想直接获取值BehaviorSubject- 你需要调用BehaviorSubject.value.
这样您就可以公开服务中的方法:
private _items$ = new BehaviorSubject<T[]>([]);
get items$() {
return this._items$.asObservable();
}
get items() {
return this._items$.value;
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
6586 次 |
| 最近记录: |