В настоящее время я работаю над небольшим Angular-проектом, основанным на учебном пособии «Тур героев».Тем не менее, «герой / герои» заменяется на «клиент / клиенты», но все по программированию одинаково.
Итак, у меня есть этот шаблон:
<!-- This part isn't working. -->
<table #table mat-table [dataSource]="customers" class="mat-elevation-z8">
<ng-container matColumnDef="position">
<th mat-header-cell *matHeaderCellDef> ID </th>
<td mat-cell *matCellDef="let customer"> {{customer.id}} </td>
</ng-container>
<ng-container matColumnDef="surname">
<th mat-header-cell *matHeaderCellDef> Surname </th>
<td mat-cell *matCellDef="let customer"> {{customer.surname}} </td>
</ng-container>
<tr mat-header-row *matHeaderRowDef="columnsToDisplay"></tr>
<tr mat-row *matRowDef="let row; columns: columnsToDisplay;"></tr>
</table>
<!-- This part works - based on Tour of Heroes -->
<h2>Customers</h2>
<ul class="customers">
<li *ngFor="let customer of customers">
<a routerLink="/detail/{{customer.id}}">
<span class="badge">{{customer.id}}</span> {{customer.surname}} {{customer.lastname}}
</a>
<button class="delete" title="delete customer" (click)="delete(customer)">x</button>
</li>
</ul>
Этокомпонент к шаблону:
import { Component, OnInit } from '@angular/core';
import { Customer } from '../models/customer';
import { CustomerService } from '../customer.service';
import { MatTable } from '@angular/material';
@Component({
selector: 'app-customers',
templateUrl: './customers.component.html',
styleUrls: ['./customers.component.css']
})
export class CustomersComponent implements OnInit {
customers: Customer[];
columnsToDisplay: ['ID', 'Surname'];
constructor(private customerService: CustomerService) { }
ngOnInit() {
this.getCustomers();
}
getCustomers(): void {
this.customerService.getCustomers().subscribe(customers => this.customers = customers);
}
delete(customer: Customer): void {
this.customers = this.customers.filter(c => c !== customer);
this.customerService.deleteCustomer(customer).subscribe();
}
}
Консоль Chrome не выдает никаких ошибок.Я также импортировал MatTableModule в файл app.module.ts.
Моя проблема похожа на эта проблема , но я даже не получаю заголовки, и решение здесь не помогло.
Пожалуйста, дайте мне знать, если вам нужна дополнительная информация.