AngularJS 1.1.5 ile ng-tekrar kullanarak önceden doldurulmuş bir seçenek ile başlamak için seçim kutusunu almaya çalışıyorum. Bunun yerine seçim her zaman hiçbir şey seçilmeden başlar. Ayrıca istemediğim boş bir seçenek var. Hiçbir şeyin seçilmemesinin bir yan etkisi olduğunu düşünüyorum.
Bu çalışmayı ng-repeat yerine ng-options kullanarak alabilirim, ancak bu durumda ng-repeat kullanmak istiyorum. Daraltılmış örneğim bunu göstermese de, her seçeneğin başlık niteliğini de ayarlamak istiyorum ve bunu bildiğim kadarıyla ng-options kullanarak yapmanın bir yolu yok.
Bunun ortak AngularJs kapsamı / prototipsel miras sorunuyla ilgili olduğunu sanmıyorum. En azından Batarang'da teftiş yaparken belirgin bir şey görmüyorum. Ayrıca, kullanıcı arayüzüyle seçimde bir seçenek belirlediğinizde, model doğru şekilde güncellenir.
İşte 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>
Ve JavaScript:
function AppCtrl($scope) {
$scope.filterCondition={
operator: 'eq'
}
$scope.operators = [
{value: 'eq', displayName: 'equals'},
{value: 'neq', displayName: 'not equal'}
]
}
JS Fiddle bunun için: http://jsfiddle.net/coverbeck/FxM3B/2/