primeNG 预设值不起作用,它显示为 [object object]
Posted
技术标签:
【中文标题】primeNG 预设值不起作用,它显示为 [object object]【英文标题】:primeNG pre set value is not working, it shows as [object object] 【发布时间】:2018-06-12 07:51:55 【问题描述】:我正在使用 angular 4 的 prime-NG 下拉菜单,亲爱的,我已经提到了我的代码的重要部分。在我选择了一个下拉项后,我将这个“config.value”值保存在数据库中。当我再次打开此表单时出现问题,我想将选定的下拉项显示为 selected 。所以我查询数据库并将“config.value”设置为保存的项目。但随后下拉菜单将其显示为 [object object] 。我应该如何更改我的代码来解决这个问题。
html:
<p-dropdown [options] = "options"
[(ngModel)] = "config.value"
editable = true
optionsLabel = "label"
[formControlName] = "config.name"
[placeholder] = "config.label"
[filter] = "config.options['filter']">
</p-dropdown>
.ts
ngOnInit()
this.myService.getOptions( this.orgId )
.subscribe( result =>
if (result[0])
for (let i =0; i < result.length ; i++)
this.options.push(label: result[i].name, value: result[i] )
);
服务返回结果:
[
"name": "Sachithra",
"phone" : "xxxxxxxxx",
"addreess": "yyyyyyyyy A"
,
"name": "wishwamal",
"phone" : "xxxxxxxxx",
"addreess": "yyyyyyyy B"
]
【问题讨论】:
【参考方案1】:当您填充options
变量时,您应该为名为@987654322@ 的属性设置一个值。在这里,您正在设置一个对象:
this.options.push(label: result[i].name, value: result[i] )
试试这样的:
this.options.push(label: result[i].name, value: result[i].phone )
或
this.options.push(label: result[i].name, value: result[i].addreess )
【讨论】:
以上是关于primeNG 预设值不起作用,它显示为 [object object]的主要内容,如果未能解决你的问题,请参考以下文章