我有 requests.service.ts 和 schedule.ts 。 我无法传递来自 requests.service.ts 的方法返回的json,即使我在返回它时将其映射。
request.service.ts
的代码import { Injectable } from '@angular/core';
import { Http, RequestOptions, Headers } from "@angular/http";
@Injectable()
export class LoginService {
constructor(public http: Http) { }
requestMethod() {
return this.http.get(url).map(res => res.json())
}
}
schedule.ts
的代码let data = this.loginService.requestMethod();
data
返回Observable {_isScalar: false, source: Observable, operator: MapOperator}...
答案 0 :(得分:1)
这是可观察的,没有明确的数据。您需要订阅并处理它。例如:
let data;
this.loginService.requestMethod()
.subscribe(okData => data = okData); // or this.data = okData if it's a class' field.
如果请求失败,您还可以处理应该执行的操作。 You can refer to this documentation to learn more about subscription