Мне дали JSON API, и я не могу рассчитать среднее значение для оценок.Я в настоящее время использую Angular7 (все еще новичок в этом).JSON выглядит следующим образом:
{
"students": [
{
"city": "Fush\u00eb-Muhurr",
"company": "Yadel",
"email": "iorton0@imdb.com",
"firstName": "Ingaberg",
"grades": [
"78",
"100",
"92",
"86",
"89",
"88",
"91",
"87"
],
"id": "1",
"lastName": "Orton",
"pic": "https://storage.googleapis.com/hatchways-app.appspot.com/assessments/data/frontend/images/voluptasdictablanditiis.jpg",
"skill": "Oracle"
}
]
}
Мой служебный файл выглядит следующим образом:
export class StudentsService {
baseURL:string = 'https://www.hatchways.io/api/assessment/students';
constructor(private http: HttpClient) { }
public getprofiles(): Observable<any> {
return this.http.get<Profile[]>(this.baseURL);
}
}
Определение TypeScript для JSON выглядит следующим образом:
export interface Profile {
city: string;
company: string;
email: string;
firstName: string;
grades: [];
id: string;
lastName: string;
pic: string;
skill: string;
}
Mycomponent.ts
файл, подобный следующему:
export class ProfilesComponent implements OnInit {
studentList: Profile[] = [];
constructor(private studentdata: StudentsService) {
this.studentdata.getprofiles().subscribe((res: Profile[]) => {
this.studentList = res;
console.log(this.studentList);
});
}
ngOnInit() {
this.studentdata.getprofiles()
.subscribe(
data => {
this.studentList = data.students;
}
);
}
}
И я называю его в моем html-файле следующим образом:
<ul *ngFor="let list of studentList">
<li>{{list.firstName}}</li>
<li>{{list.lastName}}</li>
<li>{{list.email}}</li>
<li>{{list.company}}</li>
<li>{{list.skill}}</li>
<li>{{list.grades}}</li>
</ul>