I cannot get the reason why one of my services always returns undefined
however network tab in developer mode shows me that data has been received.
Could somebody help me to figure out where my mistake is?
My component looks next way:
export interface Sponsors {
id;
sponsorCode;
sponsorName;
active;
clientId;
countryId;
cloudRegionId;
}
@Component({
selector: 'app-sponsors',
templateUrl: './sponsors.component.html',
styleUrls: ['./sponsors.component.css'],
})
export class SponsorsComponent implements OnInit {
id: any;
sponsors: Sponsors[];
applications: Applications[];
constructor(private appService: AppServices,
private route: ActivatedRoute) {
this.id = route.snapshot.url[1].path;
}
ngOnInit() {
this.getSponsors();
this.getApps();
}
getSponsors () {
this.appService.getSponsorsByClient(this.id).then(
response => {
this.sponsors = response;
console.log(this.sponsors) //returns undefined
});
}
getApps(){
this.appService.getApplications()
.then(applications => {
this.applications = applications;
console.log(this.applications) // returns data
});
}
This is my services:
getSponsorsByClient(id: any): Promise<Sponsors[]> {
const url = `${this.api}/clients/${id}/sponsors`;
return this.http.get(url)
.toPromise()
.then(response => response.json().data as Sponsors[])
}
getApplications(): Promise<Applications[]> {
return this.http
.get(this.api + "/applications")
.toPromise()
.then(response => response.json() as Applications[])
}
Thanks in advance