在我的服务中,我想要获得一个对象,但在将它返回到我的组件之前,我还想要该单个对象的详细信息。
使用管道运算符,我尝试调用可以为我提供详细信息的函数(在本例中Bar
)。
但是我有点迷失了如何做到这一点,因为我返回observable<Bar>
而不是Bar
.
export class Foo {
public ID;
public Bar: Bar;
}
export class Bar { }
/**
* Returns a single Foo
*/
public FindSingleFoo(fooID: string): Observable<Foo | HttpError> {
return this._httpClient.post<Foo>('API/FindSingleFoo', fooID)
.pipe(
map((data) => this.FindBarOfFoo(data)),
);
}
/**
* Returns the Bar of Foo
* @param fooID - the ID you want Bar for
*/
public FindBarOfFoo(foo: Foo): Observable<Foo | HttpError> {
return this._httpClient.post<Bar>('API/FindBarOfFoo', foo.ID).subscribe(
(result: Bar) => foo.Bar = result
);
}