ng-options trackby в групповом выражении
Что я делаю не так, что Angular (1.1.5) неправильно выбирает правильное значение в этом сгруппированном выпадающем списке?
HTML: <select ng-model="options.metricId" ng-options="answer.id as answer.name group by answer.question for answer in options.answers track by answer.id"></select>
options.metricId
правильно устанавливается контроллером.
options.answers
объект выглядит так: {id: 8, name: "Leads Others", question: "Assessment"}
Все параметры появляются, но это не выбор значения, где answer.id == options.metricId
как я и ожидал.
1 ответ
Решение
Добавление parseInt(answer.id)
чтобы выражение трека решило проблему.
<select class="form-control" ng-model="options.metricId" ng-options="answer.id as answer.name group by answer.question for answer in options.answers track by parseInt(answer.id)" ng-change="events.updateMetrics()"></select>