2013-10-15 3 views
0

Вот моя проблема! Я использую API $resource для отправки данных со стороны клиента на сервер. После того, как серверная база успешно обновит базу данных, я надеюсь, что мои данные будут обновлены.Обновление Угловое представление после сообщения ресурса

Я выбрал для достижения этой цели с:

$scope.magazines = Magazines.query(); 

$scope.addMagazine = function() { 
    var magazine = new Magazines({...payload data}); 
    Magazines.save(magazine, function() { 
    $scope.magazines = Magazines.query(); 
}); 
}; 

Журналы является определенным ngResrouce фабричных.

Этот код работает нормально. Моя единственная проблема в том, что всякий раз, когда я активирую эту функцию (через mouseclick), представление мигает (обновляется) один раз. Это действительно очень плохой пользовательский интерфейс.

Интересно, есть ли другой способ добавить новый «журнал» в область без обновления всего $scope.magazines?

Кстати, api на бэкэнд добавит несколько свойств (например, созданное время или идентификатор). Даже если я напишу код, чтобы получить последний добавленный элемент (по-моему, другой заводский метод), мне все равно придется добавить его в $scope.magazines, и я не знаю, как это сделать.

Любые мысли?

ответ

0

Просто push новый Magazine на существующий $scope.magazines (если это массив)

var magazine = new Magazines({...payload data}); 
$scope.magazines.push(magazine); 
+0

Это действительно работает! Но, похоже, когда я вызываю ссылку на журнал внутри обратного вызова успеха, он не содержит никакой дополнительной информации, которую я присвоил ей с помощью 'new Magazines()'. –

+0

Хм ... нечетно ... убедитесь, что функция Magazines() правильная, а потом ... хм ... не уверен после этого. Похоже, проблема будет там. – tymeJV

+0

Журналы() - фабрика ngResrouce ... –

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