我在 Angular 9 应用程序中有以下枚举和对象:
export enum Frequency {
Q='Quarterly',
M='Monthly'
}
export class FrequencyUI {
public frequency: Frequency;
public name: string;
constructor(frequency: Frequency, name: string) {
this.frequency = frequency;
this.name = name;
}
}
这是实体:
export class Fund {
public subscription_frequency?: Frequency;
}
我在选择中使用枚举值,如下所示:
<select [(ngModel)]="fund.subscription_frequency" #subscriptionFrequency="ngModel" name="subscription_frequency" [compareWith]="compareSubscriptionFrequenciesByOptionId" required>
<option [ngValue]="null">{{defaultSelect}}</option>
<option *ngFor="let sf of frequencies" [ngValue]="sf.frequency">{{sf.name}}</option>
</select>
这是比较方法,我认为问题出在此处,因为将空值与其他值进行比较,问题是我需要在此方法中进行哪些更改才能使事情正常进行。
compareSubscriptionFrequenciesByOptionId(idFirst, idSecond) {
return idFirst && idSecond && idFirst.frequency == idSecond.frequency;
}
问题是,当我选择第一个值时,它会保存在数据库中(spring boot),但只有当我返回页面时选择列表中的第一个值时,才会选择该值。如果您想从服务器中查看某些内容,请告诉我。谢谢!