角度-自定义ngx-bootstrap Typeahead以基于多个用逗号分隔的值自动完成

时间:2019-05-10 13:21:06

标签: angular angular6 typeahead ngx-bootstrap

我有一个预输入自动完成输入框。我的要求是显示列表是否与逗号输入的字符串列表匹配。

例如:

如果我的列表是:

[{
        deviceId: '1111111',
        name: 'Crafty'
    },
    {
        deviceId: '000000',
        name: 'TeleCom'
    },
    {
        deviceId: '1110009999',
        name: 'TeleCom'
    }
    {
        deviceId: '999999',
        name: 'Mobile'
    }
 ]

如果我在搜索框中输入“ 111,999”,则自动完成列表应显示3个项目(包含111、999和两者的项目)。

我目前尝试使用[typeaheadSingleWords] = true和typeaheadWordDelimiters =“,”。但这只会返回“ 1110009999”。

我当前的提前输入框是:

 <input type="text" class="form-control" 
   [(ngModel)]="autoCompleteModel" 
   [typeahead]="autoCompleteList" 
   [typeaheadItemTemplate]="filterConfig.itemTemplate"
   typeaheadOptionField="label" 
   [typeaheadWaitMs]="200" 
   [typeaheadScrollable]="true" 
   [typeaheadOptionsInScrollableView]="5" 
   [typeaheadSingleWords]=true 
   typeaheadWordDelimiters=","                         
   (typeaheadOnSelect)="onSelectAutoComplete($event)" 
   placeholder="{{filterConfig?.autoComplete?.placeholder || 'Search'}}" 
   *ngIf="showSelect" autofocus>

有什么方法可以使用ngx-bootstrap> typeahead插件来实现?任何人,请提出是否还有其他支持此功能的插件?任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:0)

有点晚了,但是我目前正在使用typeahead进行工作,我发现了这一点:

ggplot(mtcars)+
  geom_point(mapping = aes(wt, mpg, colour = "wt"))+
  geom_line(mapping = aes(x = scaling(hp, wt), y = mpg, colour = "hp")) +
  scale_x_continuous(sec.axis = sec_axis(~ scaling(., mtcars$hp), name = "hp"))

这将允许您自定义列表和元素,以便可以根据需要显示它。