2017-04-21 53 views
1

我试图绑定对象的数组使用ng2-select.It工作正常,当我试图使用字符串数据绑定失败NG2-选择

private category: Array<object> = [{ "value": 1, "text": "Table" }, { "value": 2, "text": "Chair" }, { "value": 3, "text": "Light"}] 

的阵列和我的HTML如下到下拉:

<ng-select [items]="category" [allowClear]="true" 
             placeholder="No country selected"> 
          </ng-select> 

我还引进selectModule我module.ts

+0

你能对你的问题更具体吗?你是否遇到控制台错误或选择下拉列表为空? –

+0

选择下拉列表为空 – user19041992

回答

2

格式的数据是不正确的。

相反的:

private category: Array<object> = [ 
    { "value": 1, "text": "Table" }, 
    { "value": 2, "text": "Chair" }, 
    { "value": 3, "text": "Light" } 
] 

用途:

private category: Array<object> = [ 
    { "id": 1, "text": "Table" }, 
    { "id": 2, "text": "Chair" }, 
    { "id": 3, "text": "Light" } 
] 

的区别在于value它代表一个项目的关键。这是由ng-select模块开发人员定义的。

+0

但是如果数据来自web api,该怎么办?是否需要以{id:“”,text:“”}格式转换数据 – user19041992

+0

是的,您需要这样做。由于你无法定义什么是对象的关键和价值,它只是由ng-select的开发人员公开的。但这在大多数下拉模块中并不罕见。 –