2015-11-04 2 views
1

Я пытаюсь использовать Restangular для обработки вызовов для моего успокоительного API.Restangular getList() не возвращает массив элементов списка

Вот мой код:

var baseStories = Restangular.all('stories/all'); 

baseStories.getList().then(function (stories) { 
    console.log(stories); 
}) 

console.log показывает полный restangularized массив вместо массива историй, как я бы ожидать.

Я использую RestangularProvider.addResponseInterceptor из документов, чтобы развернуть данные ответа.

Есть ли у кого-то идеи, что мне не хватает?

Редактировать: Ниже приведен скриншот выхода console.log из приведенного выше кода. Я вижу две истории (что правильно) и кучу реставрационных методов. Можно ли только получить рассказы?

Screenshot of console.log

+0

вы можете добавить вывод 'console.log (истории) 'на ваш вопрос? –

+0

он также будет полезен, если вы добавите 'console.log (data)' inside' RestangularProvider.addResponseInterceptor (функция (данные, ... ', чтобы увидеть структуру полученных данных. –

+0

Я отредактировал мой оригинальный вопрос и добавил (огромный) Снимок экрана – beeches

ответ

4

На самом деле addResponseInterceptor должен вернуть restangularized элемент. Оно написано в документации:

https://github.com/mgonto/restangular#addresponseinterceptor

Для того, чтобы получить чистый ответ вы должны вызвать метод plain() на response элемент:

var baseStories = Restangular.all('stories/all'); 

baseStories.getList().then(function (response) { 
    $scope.stories = response.plain(); 
}) 
+0

Удивительный, это то, чего я не хватало. Спасибо! – beeches

Смежные вопросы