我是 UI 开发和 PrimeNg 的新手,可能答案就在那里,但我找不到。Anyhoo,我在一个 ngFor 循环中创建多个级别的下拉列表。例如,我有 2 间豪华房和套房。和豪华有早餐,早餐+午餐,早餐+晚餐和套房只有2(早餐,早餐+晚餐)所有这些都是通过从数据库中获取数据生成的。
因此,对于第一个下拉菜单,如果用户选择 Deluxe,则第二个下拉菜单的选项应该有 3 个条目,而如果它选择 Suite,则选项应该只有 2。如何实现?
模板:
<div *ngFor="let room of flatRoomObject">
<div>
<span class="label" title="{{room.Room.Code}}" style="width: 500px;font-weight: normal">{{room.Room.Name}}</span>
<span>
<p-dropdown [options]="masterRooms" [style]="{'width':'195px'}" [(ngModel)]="room.Room.MasterId"></p-dropdown>
</span>
</div>
<div *ngFor="let rateplan of room.Rateplans">
<div>
<span class="label" title="{{rateplan.Code}}" style="width: 500px;margin-left: 30px;font-weight: normal">{{rateplan.Name}}</span>
<span>
<p-dropdown [options]="masterRateplans" [style]="{'width':'165px'}" [(ngModel)]="rateplan.MasterId"></p-dropdown>
</span>
</div>
</div>
</div>
请注意,masterRooms 是房间列表,而 masterRateplans 是我打算根据第一个下拉列表中选择的房间动态更改的房间列表。masterRooms 和 masterRateplan 是从组件中的 Db 中获取的。