Angular - 提供的数据源与数组、可观察对象或数据源不匹配

标签 angular angular-material

我通过@Input 在我的组件中接收一个对象

@输入事件

enter image description here

现在我需要在我的 Angular Material 表上使用费用数组。

<div class="table-container" *ngIf="event">
    <table mat-table [dataSource]="event" class="mat-elevation-z8">

        <ng-container matColumnDef="type">
          <th mat-header-cell *matHeaderCellDef> No. </th>
          <td mat-cell *matCellDef="let element"> {{event.type}} </td>
        </ng-container>

        <tr mat-header-row *matHeaderRowDef="displayedColumns"></tr>
        <tr mat-row *matRowDef="let row; columns: displayedColumns;"></tr>
      </table>
</div> 

但我收到错误:

provided data source did not match an array, observable, or datasource

最佳答案

dataSource提供给mat-table不是数组,因此您会看到该错误。

mat-table 提供数据的最简单方法是通过将数据数组传递给表的 dataSource输入。

由于您的 expenses数组在事件对象中,您需要通过 event.expenses表为 dataSource .

<table mat-table [dataSource]="event.expenses" class="mat-elevation-z8">

关于Angular - 提供的数据源与数组、可观察对象或数据源不匹配,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56654682/

相关文章:

javascript - 如何向 Angular2+ 中动态创建的元素添加属性?

angular - mat Snackbar 单元测试消息为空

angular-material - 角度 Material - 设置按钮处于事件状态

Angular 垫分隔器垂直宽度不调整

css - Angular Material 6 网格列表对齐元素和对齐内容到 flex-start

javascript - 将上传文件转换为字节数组以发送到 Angular/Typescript 中的 API 请求

angular - 动态添加辅助命名路由器导出

javascript - 如何在 Angular Material 中自定义 md-select 的弹出菜单?

file-upload - 使用角度 Material 上传文件 5

javascript - 根据鼠标事件和/或 bool 值更改标签颜色