gpt4 book ai didi

javascript - Mat-Select 返回未定义

转载 作者:行者123 更新时间:2023-12-01 01:59:49 27 4
gpt4 key购买 nike

我正在使用 Angular Material 并使用 Mat-Select。当用户做出选择时,我想获取一个用户,它实际上是一个具有 Id 和描述属性的对象。

<mat-form-field>
<mat-select placeholder="Select User Type" (selectionChange)="selectUserType(user)">
<mat-option *ngFor="let user of userTypeList" [value]="user.description">
{{ user.description }}
</mat-option>
</mat-select>
</mat-form-field>

当用户做出选择时,我在这里收到未定义的消息:

public selectUserType(userType: OxygenUserType) {
console.log('selected');
this.selectedUserType = userType;
console.log(this.selectedUserType);
}

我也尝试过 (selectionChange)="selectUserType($event.value)" 但这不会生成对象。我需要用户选择是一个如下所示的对象:

{id:1, description:Agent},
{id:2, description:Dealer}

该对象基于该接口(interface)

export interface OxygenUserType {
id: number;
description: string;
}

最佳答案

您可以使用[(value)]来设置选定的用户。在选项的值中指定用户对象,而不仅仅是描述:

<mat-select placeholder="Select User Type" [(value)]="selectedUserType" (selectionChange)="onUserTypeChange()">
<mat-option *ngFor="let user of userTypeList" [value]="user">
{{ user.description }}
</mat-option>
</mat-select>


public onUserTypeChange() {
console.log(this.selectedUserType);
}

关于javascript - Mat-Select 返回未定义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50692943/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com