Estou tentando obter a caixa de seleção para começar com uma opção pré-preenchida usando ng-repeat com o AngularJS 1.1.5. Em vez disso, a seleção sempre começa com nada selecionado. Ele também tem uma opção vazia, que eu não quero. Eu acho que há um efeito colateral de nada ser selecionado.
Posso fazer isso funcionar usando ng-options em vez de ng-repeat, mas quero usar ng-repeat neste caso. Embora meu exemplo resumido não o mostre, eu também quero definir o atributo title de cada opção, e não há como fazer isso usando ng-options, tanto quanto eu sei.
Eu não acho que isso esteja relacionado ao problema comum de escopo / herança prototípica do AngularJs. Pelo menos não vejo nada óbvio ao inspecionar em Batarang. Além disso, quando você escolhe uma opção na seleção com a interface do usuário, o modelo é atualizado corretamente.
Aqui está o HTML:
<body ng-app ng-controller="AppCtrl">
<div>
Operator is: {{filterCondition.operator}}
</div>
<select ng-model="filterCondition.operator">
<option
ng-repeat="operator in operators"
value="{{operator.value}}"
>
{{operator.displayName}}
</option>
</select>
</body>
E o JavaScript:
function AppCtrl($scope) {
$scope.filterCondition={
operator: 'eq'
}
$scope.operators = [
{value: 'eq', displayName: 'equals'},
{value: 'neq', displayName: 'not equal'}
]
}
JS Fiddle para isso: http://jsfiddle.net/coverbeck/FxM3B/2/