在 ng-select 中使用 addTag 时如何调用函数

问题描述

我在 angular 中使用 ng-select 来加载列表。在搜索项目是否不可用时,我使用 addTag 将项目添加到数组。但是该值未设置为 ng-select ,该函数也被调用但无法关闭添加标签条。下面是代码

items = [
  {id: 1,name: 'Python'},{id: 2,name: 'Node Js'},{id: 3,name: 'Java'},{id: 4,name: 'PHP',disabled: true},{id: 5,name: 'Django'},{id: 6,name: 'Angular'},{id: 7,name: 'Vue'},{id: 8,name: 'ReactJs'},];

addNewCompany(term:string){
  console.log(term);
  this.selected=term;
 
}
@H_404_4@

下面是HTML代码。我已经按照文档中的说明调用了 addTag 属性中的函数。但它并没有将值绑定到输入框。

<div class="form-group col-md-6 mt-2"> 
                <label for="company_name" class="modal_class ml-2"><i
                        class="uil uil-phone mr-2"></i>Company Name</label>
                        <ng-select [items]="items"
                        bindLabel="name"
                        placeholder="Select item"
                        appendTo="body"
                        [(ngModel)]="selected"
                        [addTag]="addNewCompany"
                        addTagText="Add Company"
                        [cloSEOnSelect]="true"
                        class="form-control form-control-select validate_input"
                        >
                       </ng-select>
              </div>
@H_404_4@

解决方法

尝试这样做

addNewCompany = (term:string) =>{
   console.log(term);
   this.selected=term;
     
}