Поскольку массив cnames
, с которым вы работаете, является строкой, вы должны использовать особую форму при итерации по массиву.В общем, ng-options
/ uib-typeahead
ожидают, что массив, который вы перебираете, будет массивом объектов.
При работе с массивом строк вы можете использовать
cname for cname in cnames
дляправильно назначить текст раскрывающегося списка тексту элемента массива.Это установит значение selected
на индекс выбранного элемента из исходного массива.
cname as cname for cname in cnames
установит значение selected
в качестве самого текста.
все возможныеформы документированы в https://docs.angularjs.org/api/ng/directive/ngOptions. Это те же самые формы, которые используются в UI-Bootstrap.