2013-10-08 3 views
1

У меня есть следующая простая настройка:AngularJS - Наручники Зубчатых

контроллер, который звонит в службу, чтобы получить список категорий:

$scope.enquiryCategories = CategoryServices.listCategories(); 

Сервис, который извлекает данные из внешнего API:

listCategories: function() { 
    return $http({method: 'GET', url: '/some_external_api/categories.json'}).then(function (result) { 
    return result.data.custom_field_options; 
    }); 
} 

В представлении, я просто ng-repeat над вопросом.

Он работает, однако в некоторых случаях он не отображает список при первом загрузке, заставляя пользователя обновлять страницу. Это похоже на то, что у меня есть какая-то проблема времени, но я проиграл тому, что может вызвать ее.

Я попытался реализовать listCategories, чтобы вернуть объект обещания, но он по-прежнему страдает одной и той же проблемой.

Я использую AngularJS 1.0.8.

Любая помощь или подсказки были бы весьма признательны.

ответ

1

Вы должны использовать .then() в контроллере, а решить ее полностью:

CategoryServices.listCategories().then(function(data) { 
    $scope.enquiryCategories = data; 
}); 
Смежные вопросы