Your ng-model is probably undefined on load, if you want an initial selected item set your ng-model in your controller
vm.selectedUserState = vm.UserStates[selectionKeyName]
update:
Looking at the Angular source I don't think it's possible:
if (option && !option.disabled) { //Skips if it's disabled <----
if (selectElement[0].value !== option.selectValue) {
removeUnknownOption();
removeEmptyOption();
selectElement[0].value = option.selectValue;
option.element.selected = true;
option.element.setAttribute('selected', 'selected');
}
} else {
if (value === null || providedEmptyOption) {
removeUnknownOption();
renderEmptyOption();
} else {
removeEmptyOption();
renderUnknownOption();
}
}
u as u.Group for u in vm.UserStates track by u.Obsolete=false<select ng-model="vm.selectedUserState" ng-options="u as u.Group for u in vm.UserStates" ng-if="u.Obsolete"> </select>