遍历 http 响应 Angular2
Iterating through http response Angular2
所以我是 Angular2 的新手,尝试遍历 http 响应我有点卡住了。使用以下代码:
ngOnInit() {
this._meetService.getAuth( "meets/"+ this.meetId + "/participants").subscribe(
meet => {
this.participants = meet.participants;
this.organizators = meet.organizators;
console.log(this.participants);
},
error => console.log("error")
)
}
我在 this.participants
和 this.organizators
中都得到了值,但具有以下值:
ngOnInit() {
this._meetService.getAuth("meets/"+ this.meetId + "/participants").subscribe(
meet => {
meet.participants.forEach(participant => this.members.push(participant));
meet.organizators.forEach(organizator => this.members.push(organizator));
console.log(this.members);
},
error => console.log("error")
)
}
我收到错误记录。这怎么可能?
这里是 getAuth() 方法:
@Injectable()
export class MeetService {
constructor(private http: Http, public api: ApiConfig, private _routeParams: RouteParams) {}
getAuth(path: string) {
var auth = this.api.headers();
auth.append("X-Auth-Key", "azertyuiop...");
return this.http.get(this.api.getPath(path), {headers: auth})
.map(res => <any> res.json())
}
}
我认为您正在推动 this.members
,即 undefined
。先尝试初始化
ngOnInit() {
this._meetService.getAuth("meets/"+ this.meetId + "/participants").subscribe(
meet => {
this.members = [];
meet.participants.forEach(participant => this.members.push(participant));
meet.organizators.forEach(organizator => this.members.push(organizator));
console.log(this.members);
},
error => console.log("error")
)
}
设置 members: Array<any>
只是告诉 TypeScript 有一个 member
属性 应该是 Array
类型,它不会为 属性 创建你虽然。
所以我是 Angular2 的新手,尝试遍历 http 响应我有点卡住了。使用以下代码:
ngOnInit() {
this._meetService.getAuth( "meets/"+ this.meetId + "/participants").subscribe(
meet => {
this.participants = meet.participants;
this.organizators = meet.organizators;
console.log(this.participants);
},
error => console.log("error")
)
}
我在 this.participants
和 this.organizators
中都得到了值,但具有以下值:
ngOnInit() {
this._meetService.getAuth("meets/"+ this.meetId + "/participants").subscribe(
meet => {
meet.participants.forEach(participant => this.members.push(participant));
meet.organizators.forEach(organizator => this.members.push(organizator));
console.log(this.members);
},
error => console.log("error")
)
}
我收到错误记录。这怎么可能?
这里是 getAuth() 方法:
@Injectable()
export class MeetService {
constructor(private http: Http, public api: ApiConfig, private _routeParams: RouteParams) {}
getAuth(path: string) {
var auth = this.api.headers();
auth.append("X-Auth-Key", "azertyuiop...");
return this.http.get(this.api.getPath(path), {headers: auth})
.map(res => <any> res.json())
}
}
我认为您正在推动 this.members
,即 undefined
。先尝试初始化
ngOnInit() {
this._meetService.getAuth("meets/"+ this.meetId + "/participants").subscribe(
meet => {
this.members = [];
meet.participants.forEach(participant => this.members.push(participant));
meet.organizators.forEach(organizator => this.members.push(organizator));
console.log(this.members);
},
error => console.log("error")
)
}
设置 members: Array<any>
只是告诉 TypeScript 有一个 member
属性 应该是 Array
类型,它不会为 属性 创建你虽然。