tan*_*mar 5 angular-ngselect angular
Ng-select 没有向客户端显示 bindLabel 值。也没有一个错误。我有几个 ng-select 下拉菜单。它在一个 div 中的一个下拉列表中显示价值。但是,即使我在另一个 div 中使用相同的下拉列表,它也没有显示该值。
这是我的一个 div 的下拉列表:
<div class="col-12 col-sm-12 col-md-4 m-auto mt-2">
<ng-select [items]="immigrationOptions" placeholder="Immigration Status" bindLabel="immigration_s_name"
bindValue="id" [ngClass]="{ 'is-invalid': submitted && f.immigration_status_id.errors }" appendTo="body" [virtualScroll]="true" formControlName="immigration_status_id" [(ngModel)]="immigrationOption" aria-describedby="cnt_immigration_status_id">
</ng-select>
<small id="cnt_immigration_status_id" class="form-text text-muted">Immigration Status</small>
<div *ngIf="submitted && f.immigration_status_id.errors" class="invalid-feedback">
<div *ngIf="f.immigration_status_id.errors.required">Immigration status is required</div>
</div>
</div>
Run Code Online (Sandbox Code Playgroud)
我两次使用相同的下拉菜单。但是,它不会在另一个 div 的第二个下拉列表中向用户显示标签
这在下拉列表中没有显示任何值。这是在下拉列表中显示值:
今天我也发生了同样的事情:
ng-select 使用项目数组通过如下绑定显示选项:[items]='itemArray'。这就是用户在第一次填写表单时选择选项的方式(正如我们所知)。保存数据时,后端仅存储所选项目。
当重复使用表单来查看记录并可能再次编辑时,相同的项目数组不得为空。如果是,则不会显示所选选项。Angular 不会发出任何警告,也不关心。
要点:无论用户是第一次编辑,还是从数据存储读回内容进行查看然后编辑,请确保 items 数组有内容。