我在我的项目中使用ngx-chips插件。
现在使用对服务器的 Http 调用填充下拉列表。
myContactList
数据也在视图中更新,但我看不到下拉列表。如果我再次输入一些文本,列表就会显示出来。但是列表是旧的,不是最新请求的数据。
这也是该插件中注册的一个问题。在这里查看问题
我希望列表在收到响应 pron 服务器时更新并显示。
HTML:
<tag-input id="myAnchor" [(ngModel)]='items' (onTextChange)="onTextChange($event)" [onlyFromAutocomplete]="true">
<tag-input-dropdown [showDropdownIfEmpty]="true" [autocompleteItems]="myContactList">
<ng-template let-item="item" let-index="index">
{{ item.display }}
<delete-icon (click)="input.removeItem(item, index)"></delete-icon>
</ng-template>
</tag-input-dropdown>
</tag-input>
{{myContactList | json}}
TS:
onTextChange(text) {
const data = {'Text': text};
this.Service = this.myContactService.getSearchedContacts(data).subscribe(responseData => {
this.myContactList = [];
for (let index = 0; index < responseData.length; index++) {
responseData[index].display = responseData[index].name;
responseData[index].value = responseData[index].id;
this.myContactList.push(responseData[index]);
}
});
}