Angular 7-[ngModel]不适用于mat-select

时间:2019-06-19 03:06:11

标签: angular angular-material

不知道我要去哪里错,但是在以下情况下我似乎无法使ngModel起作用:

这是模板代码:

    <mat-select [ngModel]="data.dataObject[0].phase">
            <mat-option *ngFor="let phase of possiblePhases" [value]="phase">
                {{phase}}
            </mat-option>
    </mat-select>

这是组件中可能的相位数组:

possiblePhases: string[] = ['Test1', 'Test2', 'Test3'];

最后这是我尝试从中绑定值的数据对象:

[data object[1]

选择器仅从数组中返回3个值。

我试图像这样更改可能的阶段:

  possiblePhases = [
    {phase: 'Test1'},
    {phase: 'Test2'},
    {phase: 'Test3'}
  ];

但这也不起作用。

1 个答案:

答案 0 :(得分:1)

您需要在此处使用两种方式的数据绑定,即使用 [(ngModel)]="data.dataObject[0].phase" 语法:

<mat-select 
  [(ngModel)]="data.dataObject[0].phase" 
  (selectionChange)="onChange()">
    <mat-option 
      *ngFor="let phase of possiblePhases" 
      [value]="phase">
        {{phase}}
    </mat-option>
</mat-select>