Just use your array in ng-repeat
like you would do it with any other. I prefer to define it in the controller before just that I know that there is something but angular can also handle that for you.
<li ng-repeat="address in addresses">
As aet allready mentioned in the comments, angular watches for changes in your ng-repeat
item so it gets updated whenever you change it. For example when you run an ajax request:
$http({method: 'GET', url: '/api/smartystreets/whatever'}).success(function(addresses) {
$scope.addresses = addresses;
});
It doesn't actually matter if the data is allready there, the async action is started on page load or later on with ng-change
or anything else.
This is one of the strengts of angular, the two way databinding. The only point where you need to do some more work is when you use any async event which is not "covered" by angular and therefore requires you to run the digest cycle yourself using $apply
.