我在tag-input
上设置初始值时遇到问题。当admin
单击编辑按钮tag-input
时,必须从database
获得一些初始值。我怎样才能做到这一点 ?这是我的代码示例:
<tag-input formControlName="ticketTypes">
<tag-input-dropdown
[showDropdownIfEmpty]="true"
[dynamicUpdate]="false"
[focusFirstElement]="true"
[displayBy]="'name'"
[identifyBy]="'name'"
[autocompleteItems]="ticketType"
>
<ng-template let-item="item" let-index="index">
{{ item.name }}
</ng-template>
</tag-input-dropdown>
</tag-input>
以下是一些内容:
setHall() {
if (this.halls !== undefined) {
this.loadFirst = false;
this.halls.forEach(hall => {
console.log(hall.ticketTypes);
this.formArray.push(
this.fb.group({
name: hall.name,
availableWindowCount: hall.availableWindowCount,
totalWindowCount: hall.totalWindowCount,
ticketTypes: []
})
);
});
}
}
当用户单击编辑按钮时,上面的函数将被调用,它会抛出一些数据并将其设置在表单组上。但是我需要在tag-input
中添加一些值。我真正想要的是当用户单击“编辑”按钮时,标签输入上的一些初始值。我究竟做错了什么 ?。
答案 0 :(得分:0)
有一个(onFocus)="onInputFocused($event)"
事件。您可以在此处致电您的服务器,并使用检索到的样本数据填写表单。例如
this.service.getTicketTypes().then(tt=>{
this.form.controls.ticketTypes.setValue(JSON.parse(tt));
})