Anda menggunakan node
variabel di ngFor
second kedua di luar ruang lingkupnya. Variabel ini hanya ada di dalam elemen (dan atributnya) yang ngFor
sedang beraksi.
Apa yang mungkin ingin Anda lakukan adalah menunggu perubahan pada nilai yang dipilih dari pilihan pertama, perbarui beberapa variabel di pengontrol Anda, yang kemudian akan menyebabkan ngFor
kedua untuk memperbarui. Ini dapat dilakukan dengan menggunakan ngModelChange
:
<div class="row">
<div class="col-md-12">
<label>Choose a room</label>
<select [(ngModel)]="nodes" (ngModelChange)="selectedNode=$event.target.value">
<option *ngFor="let node of nodes"[ngValue]="node">{{node.name}}</option>
</select>
<br/><br/>
<label>Choose an item</label>
<div *ngFor="let module of selectedNode.modules">
<select [(ngModel)]="channels">
<option *ngFor="let channel of module.channels">
{{channel.name}}
</option>
</select>
</div>
</div>