Angular HttpClient 组合管道,点按和订阅?
Angular HttpClient combine pipe, tap with subscribe?
我正尝试在 Angular 中使用 HttpClient 检索一些数据。我的代码如下所示:
getData(suffurl: string, id?:number): Observable<any[]> {
return this.http.get<any[]>('localhost:5555/DNZ/'+ this.suff_url)
.pipe(
tap(data => console.log("Anlagenstatus Daten:", data)),
catchError(this.handleError('getData',[])),
subscribe(Response => { console.log(Response)})
)
}
但是,我不能在 pipe 方法中使用 subscribe,也不能将它链接到 .pipe 方法之前或之后。问题是,如果没有订阅,尽管 link 和数据存在,但似乎此代码没有从 url 返回任何数据或将任何内容记录到控制台?
您必须订阅该方法(因为它 returns 一个 Observable
),而不是在管道内。
试试这个
getData(suffurl: string, id?:number): Observable<any[]> {
return this.http.get<any[]>('localhost:5555/DNZ/'+ this.suff_url)
.pipe(
tap(data => console.log("Anlagenstatus Daten:", data)),
catchError(this.handleError('getData',[])),
)
}
然后打电话
this.getData("url").subscribe(Response => { console.log(Response)})
我正尝试在 Angular 中使用 HttpClient 检索一些数据。我的代码如下所示:
getData(suffurl: string, id?:number): Observable<any[]> {
return this.http.get<any[]>('localhost:5555/DNZ/'+ this.suff_url)
.pipe(
tap(data => console.log("Anlagenstatus Daten:", data)),
catchError(this.handleError('getData',[])),
subscribe(Response => { console.log(Response)})
)
}
但是,我不能在 pipe 方法中使用 subscribe,也不能将它链接到 .pipe 方法之前或之后。问题是,如果没有订阅,尽管 link 和数据存在,但似乎此代码没有从 url 返回任何数据或将任何内容记录到控制台?
您必须订阅该方法(因为它 returns 一个 Observable
),而不是在管道内。
试试这个
getData(suffurl: string, id?:number): Observable<any[]> {
return this.http.get<any[]>('localhost:5555/DNZ/'+ this.suff_url)
.pipe(
tap(data => console.log("Anlagenstatus Daten:", data)),
catchError(this.handleError('getData',[])),
)
}
然后打电话
this.getData("url").subscribe(Response => { console.log(Response)})