我正在尝试使用list-formatter功能进行ng2-auto-complete,但无法找到如何实现这一功能的好例子。到目前为止,我有以下代码:
<input class="form-control input-list" ng2-auto-complete
[(ngModel)]="model4"
placeholder="Search"
[source]="googleGeoCode"
list-formatter="myListFormatter"
path-to-data=""
value-property-name=null
display-property-name=null
min-chars="2"
/>
export class HomeComponent {
templateStr: any = templateStr;
valuePropertyName: string;
displayPropertyName: string;
googleGeoCode: string = "http://localhost:61227/machine/?query=:keyword";
myListFormatter(data: any): string {
let html: string = "";
html += data[this.valuePropertyName] ? `<b>(${data[this.valuePropertyName]})</b>` : "";
html += data[this.displayPropertyName] ? `<span>${data[this.displayPropertyName]}</span>` : data;
return html;
}
}
那么,我怎样才能让list-formatter工作?
答案 0 :(得分:6)
list-formatter属性名必须在括号内,如下所示:
[list-formatter]="myListFormatter"
你的函数中的this.valuePropertyName
也不会得到认可。你必须在引号内放入数据对象的键。
我认为默认设置是&#39; id&#39;和&#39;价值&#39;。试试data['id']
和data['value']