以编程方式在 angular5ng-select 中设置 selected 值
set selected value in angular5 ng-select programmaticaly
我正在使用 angular5 ng-select 组件:
https://github.com/ng-select/ng-select
并尝试在首次加载容器组件时设置 selected 值(以编程方式)(模型中设置的默认 selected 值)。
我没有找到它或每个项目的 isSelected 的任何相关属性。
这是我的代码(已过滤):
HTML:
<ng-select [items]="filter.values" bindLabel="text" bindValue="id" class="input-md" [(ngModel)]="filter.selectedValue"></ng-select>
型号:
export class FilterData
{
Name : string;
FormattedName : string;
values : Filter[];
selectedValue : Filter = null;
constructor(filterData : FilterData)
{
this.Name = filterData.Name;
this.values = filterData.values;
this.selectedValue = typeof filterData.selectedValue == "undefined" ? null : filterData.selectedValue;
}
}
export class Filter
{
public id: number;
public text: string;
}
只需找到项目
let item = this.ngSelect.itemsList.findByLabel('label of the item');
然后重新设置
this.ngSelect.select(item);
您需要在 angular 组件中引用 ng-select
@ViewChild(NgSelectComponent)
ngSelect: NgSelectComponent;
我正在使用 angular5 ng-select 组件: https://github.com/ng-select/ng-select 并尝试在首次加载容器组件时设置 selected 值(以编程方式)(模型中设置的默认 selected 值)。 我没有找到它或每个项目的 isSelected 的任何相关属性。 这是我的代码(已过滤): HTML:
<ng-select [items]="filter.values" bindLabel="text" bindValue="id" class="input-md" [(ngModel)]="filter.selectedValue"></ng-select>
型号:
export class FilterData
{
Name : string;
FormattedName : string;
values : Filter[];
selectedValue : Filter = null;
constructor(filterData : FilterData)
{
this.Name = filterData.Name;
this.values = filterData.values;
this.selectedValue = typeof filterData.selectedValue == "undefined" ? null : filterData.selectedValue;
}
}
export class Filter
{
public id: number;
public text: string;
}
只需找到项目
let item = this.ngSelect.itemsList.findByLabel('label of the item');
然后重新设置
this.ngSelect.select(item);
您需要在 angular 组件中引用 ng-select
@ViewChild(NgSelectComponent)
ngSelect: NgSelectComponent;