Я использую компонент typeahead angular-ui-boostrap, чтобы позволить людям выбирать имя человека или добавлять новое имя, если их выбор отсутствует.
Прямо сейчас я изменил getMatchesAsync
своим собственным кодом:
if(scope.matches.length < 4 || scope.matches.length == undefined){
scope.matches.push({
id: getMatchId(matches.length),
label: 'Add New +',
model: 'new'
});
}
Но я понимаю, что это не очень хорошее долгосрочное решение, особенно когда компонент обновляется.
Куда я должен поместить свой код и как мне интегрировать его в компонент? Модуль Typeahead: https://github.com/angular-ui/bootstrap/blob/master/src/typeahead/typeahead.js
sourceArray
, который возвращает отфильтрованный набор с необязательной новой моделью (или обещанием, если вам нужно обрабатывать асинхронно). Единственная разница в том, что вы выполняете фильтрацию/сопоставление вместо ввода текста - person Phil   schedule 11.06.2015typeahead='item in items | addNew'
или каким-то подобным кодом - person tarrball   schedule 11.06.2015