具有多选选项的Angular Typeahead

问题描述 投票:0回答:1

想要通过下拉列表实现具有多选的Angular typeahead。

现在,我正在使用

https://ng-bootstrap.github.io/#/components/typeahead/examples

enter image description here

angular typeahead
1个回答
0
投票

1)安装包

npm install ng-multiselect-dropdown

2)添加您的模块

import { NgMultiSelectDropDownModule } from 'ng-multiselect-dropdown'; //eg app.module.ts

3)添加你的组件和HTML HTML

<ng-multiselect-dropdown
  [placeholder]="'custom placeholder'"
  [data]="dropdownList"
  [(ngModel)]="selectedItems"
  [settings]="dropdownSettings"
  (onSelect)="onItemSelect($event)"
  (onSelectAll)="onSelectAll($event)"
>
</ng-multiselect-dropdown>

TS:

dropdownList = [];
  selectedItems = [];
  dropdownSettings = {};
  ngOnInit() {
    this.dropdownList = [
      { item_id: 1, item_text: 'Mumbai' },
      { item_id: 2, item_text: 'Bangaluru' },
      { item_id: 3, item_text: 'Pune' },
      { item_id: 4, item_text: 'Navsari' },
      { item_id: 5, item_text: 'New Delhi' }
    ];
    this.selectedItems = [
      { item_id: 3, item_text: 'Pune' },
      { item_id: 4, item_text: 'Navsari' }
    ];
    this.dropdownSettings = {
      singleSelection: false,
      idField: 'item_id',
      textField: 'item_text',
      selectAllText: 'Select All',
      unSelectAllText: 'UnSelect All',
      itemsShowLimit: 3,
      allowSearchFilter: true
    };
  }
  onItemSelect(item: any) {
    console.log(item);
  }
  onSelectAll(items: any) {
    console.log(items);
  }

参考。 :https://github.com/nileshpatel17/ng-multiselect-dropdown

© www.soinside.com 2019 - 2024. All rights reserved.