Angular mat-select获取所选的选项数据对象

问题描述 投票:2回答:1

在我的Angular 7应用程序下,我正在使用mat-select组件:

<mat-form-field  class="col-md-3" color="warn">
     <mat-select placeholder="Selectionner le code Edo"
                  id="codeEdo"
                  [(value)]="selectedCodeEdoValue"
                  ngDefaultControl
                  formControlName="codeEdo">
     <mat-option (onSelectionChange)="onEdoSelectionChanged(edo )"
                 *ngFor="let edo of shopsList"
                  [value]="edo.edoId">
                  {{edo.edoId}}
     </mat-option>
     </mat-select>
</mat-form-field>

我的选项数据如下:

let shopsList= [
  {
    'edoId': '4010',
    'storeName': 'ABBEVILLE'
  }
  ,
  {
    'edoId': '3650',
    'storeName': 'AGEN'
  }
  ,
  {
    'edoId': '3298',
    'storeName': 'AIX ALLEES PROVENCALES'
  }
];

我的目的是在选择选项时获取所选对象数据,而不仅仅是值

例如,当我选择第一个选项时,我想得到这个:

result = {
    'edoId': '4010',
    'storeName': 'ABBEVILLE'
}

不仅价值'4010'

你可以看到我试过这个:(onSelectionChange)="onEdoSelectionChanged(edo )

但这总是引发了两个事件,对于旧的选择选项和新选择的选项,

我怎么才能得到新的选择数据?

javascript angular angular-material angular6 angular-material2
1个回答
3
投票

我认为你的错误是这段代码:

[value] =“or.edoId”

尝试将其更改为

[value] =“或”

这将返回完整对象,而不仅仅是该特定字段

© www.soinside.com 2019 - 2024. All rights reserved.