Angular 如何使用ng2自动完成的列表格式化程序示例?

Angular 如何使用ng2自动完成的列表格式化程序示例?,angular,autocomplete,typeahead,Angular,Autocomplete,Typeahead,我正在尝试使用ng2自动完成的列表格式化程序功能,但是找不到一个很好的例子来说明如何实现它。到目前为止,我有以下代码: <input class="form-control input-list" ng2-auto-complete [(ngModel)]="model4" placeholder="Search" [source]="googleGeoCode" list-formatter="myListFormatter"

我正在尝试使用ng2自动完成的列表格式化程序功能,但是找不到一个很好的例子来说明如何实现它。到目前为止,我有以下代码:

<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;
      }

 }

导出类HomeComponent{
templateStr:any=templateStr;
valuePropertyName:字符串;
displayPropertyName:字符串;
谷歌地理代码:字符串=”http://localhost:61227/machine/?query=:keyword";
myListFormatter(数据:任意):字符串{
让html:string=”“;
html+=data[this.valuePropertyName]?`(${data[this.valuePropertyName]})`:;
html+=data[this.displayPropertyName]?`${data[this.displayPropertyName]}`:数据;
返回html;
}
}

那么,如何让列表格式化程序工作呢?

列表格式化程序属性名称必须位于括号内,如下所示:

[list-formatter]="myListFormatter"
函数中的
this.valuePropertyName
也无法识别。您必须将数据对象的键放在引号中


我认为默认值是“id”和“value”。试试
data['id']
data['value']

我想你忘了问问题;)当前行为和预期行为是什么?