angular material string-array 到 pre-multi-selected mat-select 以更用户友好的格式显示数据
angular material string-array to pre-multi-selected mat-select to display data in more user-friendly format
想要在 mat-select 中显示字符串数组。该 mat-select 应将数据显示为 pre-selected(多个)格式。通过单击它,应该显示选项,但不能进行任何更改。 mat-select 是 mat-table 条目的一部分,应该只是 html-template-code 中定义的视图单元格(不应更改 table-数据源)。
以angular-material-select-文档为例,但即使不手动select它也无法显示数据。
<ng-container matColumnDef="letters">
<th mat-header-cell *matHeaderCellDef>Letters</th>
<td mat-cell *matCellDef="let data; let i = index;">
<mat-form-field>
<mat-label></mat-label>
<mat-select multiple [ngModel]="data.letters">
<mat-option *ngFor="let letter of data.letters" checked disabled>
{{letter}}
</mat-option>
</mat-select>
</mat-form-field>
</td>
</ng-container>
通过将 value
添加到 select 的模型,您可以在多 select 控件中 "check" 选项:
<ng-container matColumnDef="letters">
<th mat-header-cell *matHeaderCellDef>Letters</th>
<td mat-cell *matCellDef="let data; let i = index;">
<mat-form-field>
<mat-label></mat-label>
<mat-select multiple [ngModel]="data.letters">
<mat-option *ngFor="let letter of data.letters" [value]="letter" disabled>
{{letter}}
</mat-option>
</mat-select>
</mat-form-field>
</td>
</ng-container>
想要在 mat-select 中显示字符串数组。该 mat-select 应将数据显示为 pre-selected(多个)格式。通过单击它,应该显示选项,但不能进行任何更改。 mat-select 是 mat-table 条目的一部分,应该只是 html-template-code 中定义的视图单元格(不应更改 table-数据源)。
以angular-material-select-文档为例,但即使不手动select它也无法显示数据。
<ng-container matColumnDef="letters">
<th mat-header-cell *matHeaderCellDef>Letters</th>
<td mat-cell *matCellDef="let data; let i = index;">
<mat-form-field>
<mat-label></mat-label>
<mat-select multiple [ngModel]="data.letters">
<mat-option *ngFor="let letter of data.letters" checked disabled>
{{letter}}
</mat-option>
</mat-select>
</mat-form-field>
</td>
</ng-container>
通过将 value
添加到 select 的模型,您可以在多 select 控件中 "check" 选项:
<ng-container matColumnDef="letters">
<th mat-header-cell *matHeaderCellDef>Letters</th>
<td mat-cell *matCellDef="let data; let i = index;">
<mat-form-field>
<mat-label></mat-label>
<mat-select multiple [ngModel]="data.letters">
<mat-option *ngFor="let letter of data.letters" [value]="letter" disabled>
{{letter}}
</mat-option>
</mat-select>
</mat-form-field>
</td>
</ng-container>