【发布时间】:2019-05-27 05:34:40
【问题描述】:
我想用 mat-table 构建一个自定义表,其中最后一列和每一行我想定义一个自定义组件。这行得通。但是自定义组件是用于一些输入的,所以用户可以选择一些选项或输入一些东西。
<mat-table class="mat-elevation-z8" #table [dataSource]='dataSource'>
<ng-container matColumnDef='value'>
<mat-header-cell *matHeaderCellDef>Values</mat-header-cell>
<mat-cell *matCellDef='let row'>
<app-dropdown-element #drop *ngIf="row.value == 'dropdown'" [options$]='row.$options'></app-dropdown-element>
<app-input-element #text *ngIf="row.value == 'text'" [title]=''></app-input-element>
<app-input-number-element #num *ngIf="row.value == 'number'" [number$]='row.$number'></app-input-number-element>
</mat-cell>
</ng-container>
</mat-table>
这就是我在表格外加载组件时得到的结果
'selected' value is also correct:
DropdownElementComponent {options$: {…}, selected: "TEST"}
options$: {label: "TEST", options: Array(2), id: "oil-type"}
selected: "TEST"
__proto__: Object
但是在表格里面,我得到一个'undefined'
【问题讨论】:
-
有机会分享一个stackblitz吗?我没有立即看到任何错误,所以如果我也能看到所有周围的代码会更容易。
-
@Jesse Here 是链接
-
我在任何地方都没有看到
undefined。 stackblitz 看起来一切正常。你能提供更多背景信息吗? -
只需检查控制台,如果您选择表格内的某些内容并单击按钮,您将看到它
标签: angular angular-material angular-material-7 angular-material-table