我有代码:
export class Test {
constructor(private http: Http) {}
logResponse(): Observable<any> {
return this.http.get('http://google.com')
.do(data => console.log("All: " + JSON.stringify(data)));
}
}
但是,遗憾的是,没有任何东西可以打印到控制台。我刚刚开始使用Rxjs,对于这个蹩脚的问题感到抱歉。为什么不记录?我有所需的http和导入,没有例外,只是没有打印。我按下按钮就会触发它。
答案 0 :(得分:4)
您必须先添加subscribe
才能激活它。这种观察结果很冷(hot vs cold observables)。
所以在你的情况下:
logResponse(): Observable<any> {
return this.http.get('http://google.com')
.do(data => console.log("All: " + JSON.stringify(data)))
.subscribe(data => console.log("All from subscribe: " + JSON.stringify(data)));
}
}