title: UI Bootstrap Typeahead not returning async values
body: <p>I am trying to do an autocomplete search using UI Bootstrap Typeahead to select a category from a database.</p>
  
  <p>I have set up an example database with 4 categories, the final one will contain more than a thousand categories.</p>
  
  <p>When I start typing, the search results return 4 rows (so something must be working, because I tried to change the number of rows in the DB and the search result mirrors the total number of rows) but with no value. However, it doesn't matter what I write so it doesn't seem to be matching.</p>
  
  <p><strong>HTML</strong></p>
  
  <pre><code>&lt;input class="form-control" type="text" name="category" id="category" placeholder="Search..." ng-model="asyncSelected" typeahead="name for name in getCdOnCat($viewValue)" typeahead-loading="loadingLocations" required&gt;
  </code></pre>
  
  <p><strong>controller.js</strong></p>
  
  <pre><code>//Typeahead: Category Search
  $scope.getCdOnCat = function (searchVal) {
      return dataFactory.getCdOnCategory(searchVal, globalVal_accessToken, globalVal_storeId).then(function (response) {
          console.log(response.data.categories);
          return response.data.categories;
      }, function (error) {
          console.log('Error: dataFactory.getCdOnCategory');
      });
  };
  </code></pre>
  
  <p><strong>service.js</strong></p>
  
  <pre><code>app.factory("dataFactory", function ($http) {
  var factory = {};
  
  factory.getCdOnCategory = function (searchVal, accessToken, storeId) {
      return $http.get('data/getCdOnCategory.aspx?searchVal=' + searchVal + '&amp;accessToken=' + accessToken + '&amp;storeId=' + storeId)
  };
  
  return factory;
  });
  </code></pre>
  
  <p><strong>JSON</strong></p>
  
  <pre><code>{ "categories":[ 
      { "name": "Clothes" }, 
      { "name": "Cypress" }, 
      { "name": "Citrus" }, 
      { "name": "Cats" } 
  ] }
  </code></pre>