如何在Angular中从Observable/http/async调用中返回响应?
如何在Angular中从Observable/http/async调用中返回响应?
我有一个服务,它返回一个observable对象,该对象会向我的服务器发送http请求并获取数据。我想使用这些数据,但最终总是得到undefined
。问题出在哪里呢?
服务:
@Injectable() export class EventService { constructor(private https: Http) { } getEventList(): Observable{ let headers = new Headers({ 'Content-Type': 'application/json' }); let options = new RequestOptions({ headers: headers }); return this.http.get("https://localhost:9999/events/get", options) .map((res)=> res.json()) .catch((err)=> err) } }
组件:
@Component({...}) export class EventComponent { myEvents: any; constructor( private es: EventService ) { } ngOnInit(){ this.es.getEventList() .subscribe((response)=>{ this.myEvents = response; }); console.log(this.myEvents); //这里打印出undefined! } }
我查看了如何从异步调用中返回响应?这个帖子,但没有找到解决方案。