【发布时间】:2017-07-24 13:06:23
【问题描述】:
更新
我注意到一个奇怪的行为!我在这项服务中几乎没有方法,我得到不同的响应(一个映射正确,另一个看起来很奇怪)。我更新了代码。
someService.ts:
import {Http, Response} from '@angular/http';
import {Observable} from 'rxjs/Observable';
import 'rxjs/add/operator/map';
@Injectable()
export class someService {
constructor(private _http:Http) { }
getSession():Observable<IUser> { // i get a response like that [object object]
this.getsession = this._http.get("/url");
return this.getsession.map((response) => <IUser> response.json());
}
getUser():Observable<IUser> { // i get the the response object mapped here as one of the comments said the response doesn't have data object
this.user = this._http.get("/url");
return this.user.map(response => <User> response.json());
}
}
user.component.ts
import { Component, OnInit } from '@angular/core';
import {IUser} from "../common/user";
import {SomeService} from "../services/someService.service";
@Component({
selector: "user",
templateUrl: "./user.component.html",
})
export class User implements OnInit {
user:IUser;
constructor( private _someService:SomeService) {
}
getUser() {
this._someService.getSession().subscribe((data) => {
this.user = data; // the response looks like this: [object Object]
}, (err) => {
this.errorMsg = ""
});
}
ngOnInit():void {
}
}
我从休息中得到的 JSON 对象:
{"uid":"***","name":"Test","mail":null,"gname":null,"sn":null,"isEn":true,"user":"**"}
【问题讨论】:
-
“不起作用”到底是什么意思?
-
@Hazu 您在使用地图时是否遇到任何错误?
-
@GünterZöchbauer 如果我使用地图运算符,我会得到未定义!没有映射我得到可观察的对象
-
请发布确切的错误信息。
-
@NikhilRadadiya 不,我的控制台没有错误
标签: angular rxjs angular2-observables