Q:

angularJS ngDisabled executes function before ng-repeat loads

I'm using an API to populate a $scope.var via $http, taking that $scope.var. 
I have a nested ng-repeat
html:
<tr ng-repeat='(chore,details) in choreList'>
  <td>
    <div class="btn-group">
      <button ng-repeat="user in users" class='btn group-item' ng-click="addChoreDetail(chore, user.name)" title="{{user.name}}" ng-disabled="checkAddabilityChoreDetail(chore, user.name)">{{chore}}</button>
          </div>
        </td>
      </tr>

js:
$scope.checkAddabilityChoreDetail = function(inputChore,inputName){
  console.log(inputChore);
}

I'm unaware in Angular how to get the ngDisabled to wait to send the chore variable until the repeat actually happens. 
I'm getting undefined in my console log for the request time of the get choreList and I'm not sure how to make it wait for my object to be populated with data. 

A:

You should use promises for async operations where you don't know when it will be completed - http://docs.angularjs.org/api/ng.$q .  
Promises are "interface for interacting with an object that represents the result of an action that is performed asynchronously, and may or may not be finished at any given point in time".