I dealt with a similar situation yesterday at work.
My drop down list had to list the names of all countries.
I am now able to set a default value for the drop down list.
Please change the code according to your needs.
What I had to do: Set CH/Switzerland as default value for vm.selectedCountry.
CodePen code (using select):
Sample:
<select class="selector" ng-model="vm.selectedCountry" ng-options="country.name for country in vm.countries" ng-init="vm.selectedCountry = {'name': 'Switzerland', 'code': 'CH', 'init': true}">
<!--shows only when ng-init is run-->
<option value="" ng-show="vm.selectedCountry.init">Switzerland</option>
</select>
Drop-down List (AngularJS): Adding default value using select, ng-init and ng-show
CodePen code (using md-select and Angular Material):
Sample:
<md-select ng-model="vm.selectedCountry" ng-init="vm.selectedCountry = vm.selectedCountry?selectedCountry : 'CH';">
<md-option ng-value="'CH'" ng-selected="vm.selectedCountry == 'CH'?true:false">Switzerland</md-option>
<md-option ng-repeat="country in vm.countries" ng-value="country.code">
{{country.name}}
</md-option>
</md-select>
Drop-down List (AngularJS): Adding default value using md-select, ng-init and ng-selected
In the above one, the default value is spliced from the array and put first in md-select (else, duplication occurs).