Почему мне нужно обещание обратного вызова из запроса $ ресурса

0

В моем контроллере есть запрос:

        WorkersService.all.query({}, function(data) {
            $scope.workers = data;
        });

Я заметил, что при итерации над $scope.workers like
this: for(var я in $scope.workers)... Я получаю все предметы + 2. Т.е.:

0: Resource
1: Resource
2: Resource
3: Resource
4: Resource
$promise: Promise
$resolved: true
length: 5
__proto__: Array[0]
  1. Таким образом, параметр обратного вызова является обещанием?
  2. Почему мне нужно обещание в обратном вызове, если я уверен, что ответ уже находится в data
  3. У меня есть решение для этого просто использовать angular.forEach, но как получить "чистые" данные изнутри этого обратного вызова?
Теги:

1 ответ

0

1 Таким образом, параметр обратного вызова является обещанием

Нет, вы можете использовать $ prom вместо callback

     WorkersService.all.query().$promise.then(function(data){
        $scope.workers = data;
     });

2.Почему мне нужно обещание в обратном вызове, если я уверен, что ответ уже есть в данных

Теперь вы знаете, зачем тогда возвращать $ обещание в ответном ответе

3. У меня есть решение для этого просто использовать угловое. Для каждого, но как получить "чистые" данные изнутри этого обратного вызова?

Просто используйте $scope.workers = data.data вместо $scope.workers = data

  • 0
    data.data в этом случае не определен

Ещё вопросы

Сообщество Overcoder
Наверх
Меню