Не удается привязаться к «источнику данных», поскольку это неизвестное свойство «таблицы» все еще кажется проблемой

#angular #angular-material

Вопрос:

Я рассмотрел все причины, по которым это происходит в Интернете, и я все еще не могу устранить вышеуказанную ошибку в «Источнике данных», может ли кто-нибудь увидеть что-то неправильное в моем коде?

HTML:

 lt;table mat-table [dataSource]="dataSource" class="mat-elevation-z8"gt;   lt;ng-container matColumnDef="position"gt;  lt;th mat-header-cell *matHeaderCellDefgt;No.lt;/thgt;  lt;td mat-cell *matCellDef="let element"gt;{{ element.position }}lt;/tdgt;  lt;/ng-containergt;   lt;tr mat-header-row *matHeaderRowDef="displayedColumns"gt;lt;/trgt;  lt;tr mat-row *matRowDef="let row; columns: displayedColumns"gt;lt;/trgt; lt;/tablegt;  

тс:

 import { Component } from '@angular/core';  export interface PeriodicElement {  position: number; }  const ELEMENT_DATA: PeriodicElement[] = [  { position: 1 },  { position: 2 },  { position: 3 }, ];  /**  * @title Basic use of `lt;table mat-tablegt;`  */ @Component({  selector: 'app-component',  templateUrl: 'app.component.html', }) export class AppComponent {  displayedColumns: string[] = ['position'];  dataSource = ELEMENT_DATA; }  

Модуль:

 import { NgModule } from '@angular/core'; import { BrowserModule } from '@angular/platform-browser';  import { AppRoutingModule } from './app-routing.module'; import { AppComponent } from './app.component';  import { MatTableModule, MatSortModule } from '@angular/material';  @NgModule({  declarations: [AppComponent],  imports: [BrowserModule, AppRoutingModule, MatTableModule, MatSortModule],  providers: [],  bootstrap: [AppComponent], }) export class AppModule {}  

Я перепробовал все рекомендуемые изменения, такие как удаление «таблицы» в html, импорт MatDataSource, но по-прежнему ничего не исправляет эту проблему. Я удивлен, что эта таблица использует данные для нас или я использую ее неправильно, если я извлекаю данные из API?

Спасибо

Комментарии:

1. какую @angular/material версию вы используете?

2. Похоже, импорт должен быть import { MatTableModule } from '@angular/material/table'; и import { MatSortModule } from '@angular/material/sort'; вместо import { MatTableModule, MatSortModule } from '@angular/material';

3. Я использую 8.2.3, и именно по этой причине я думал, что импорт будет просто «@угловой/материал». Спасибо

4. Не могли бы вы, пожалуйста, предоставить стакблица?

5. Я всегда борюсь с Stackblitz и установкой зависимостей. Это просто всегда терпит неудачу, поэтому я не могу воссоздать это, чтобы поделиться, извините