Я не могу отобразить данные с локального сервера.
Клиент делает запрос, сервер берет данные из файла CSV. Данные будут отправлены как json. Я пытаюсь проанализировать данные MatTableDataSource и отобразить их в таблице.
Похоже, в таблице нет данных, но вы можете увидеть данные в журналах.
Файл с машинописный код
personal-list.component.ts
import { Component, OnInit } from '@angular/core';
import { ApiService } from '../core/api.service';
import { MatTableDataSource } from '@angular/material/table';
export interface PersonalList {
Name: string;
Position: string;
}
@Component({
selector: 'app-personal-list',
templateUrl: './personal-list.component.html',
styleUrls: ['./personal-list.component.css']
})
export class PersonalListComponent implements OnInit {
displayedColumns: string[] = ['name', 'position'];
dataSource;
person;
personal: PersonalList[];
constructor(private apiService: ApiService) { }
ngOnInit(): void {
this.apiService.getPersonalList().subscribe((data: PersonalList[]) => {
console.log(data);
this.dataSource = new MatTableDataSource(data);
console.log(this.dataSource);
});
console.log(this.dataSource);
}
}
Файл с HTML кодом personal-list.component. html
<p>personal-list works!</p>
<mat-table [dataSource]="dataSource" class="mat-elevation-z8">
<ng-container matColumnDef="name">
<mat-header-cell *matHeaderCellDef>Name</mat-header-cell>
<mat-cell *matCellDef="let element"> {{element.Name}} </mat-cell>
</ng-container>
<ng-container matColumnDef="position">
<mat-header-cell *matHeaderCellDef>Position</mat-header-cell>
<mat-cell *matCellDef="let element"> {{element.Position}} </mat-cell>
</ng-container>
<mat-header-row *matHeaderRowDef="displayedColumns"></mat-header-row>
<mat-row *matRowDef="let row; columns: displayedColumns;"></mat-row>
</mat-table>
Снимок экрана с выходами таблицы и консоли