【发布时间】:2017-02-09 16:00:32
【问题描述】:
您好,我正在努力解决我遇到的问题:
我有一个带有自动完成功能的输入字段。我想为它做重音折叠。
例如
当我使用术语 mun 进行搜索时,这两个词应该会出现 Dortmund & München
我目前拥有的是,如果我使用术语 mün 进行搜索,它会列出 Dortmund。但不是München
accentMap = {
'ü': 'u',
'Ü': 'u',
'ä': 'a',
'Ä': 'a',
'ö': 'o',
'Ö': 'o'
};
let str = '';
for(let i = 0; i < input.length; i++) {
str += this.accentMap[input.charAt(i)] || input.charAt(i);
}
然后我使用 str 调用一个 API,该 API 返回这些条目,如 Dortmund 或 München。
【问题讨论】:
-
您使用的是哪种
typeahead?它是由任何库提供的吗? -
ng2 bootstrap typeahead
-
我阅读了他们的文档并找到了
typeaheadLatinize输入。在这种情况下它不起作用吗? -
不,很遗憾它没有
-
如果我相信documentation,内置的
typeaheadLatinize选项正好解决了这个问题,它应该默认启用。因此,您不必为此编写任何自定义代码。如果它不起作用,您可能应该向 Angular 2 Bootstrap 组件的作者提出问题。
标签: angular typescript typeahead