2013-10-15 80 views
0

這是我的問題!我使用$resource API將數據從客戶端發佈到服務器端。在服務器端成功更新數據庫後,我希望我的數據可以更新。更新資源後的角度視圖

我選擇了與實現這一目標:

$scope.magazines = Magazines.query(); 

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

雜誌是一個定義ngResrouce工廠。

此代碼正常工作。我唯一的問題是,無論何時激活此功能(通過鼠標點擊),視圖都會閃爍(刷新)一次。這是一個非常糟糕的用戶體驗。

我不知道是否有任何其他方式添加新的「雜誌」的範圍,而不刷新整個$scope.magazines

順便說一句,在後端的api將添加一些屬性(如創建時間,或ID到它)。即使我編寫代碼來獲取最後添加的項目(我想也是一種不同的工廠方法),但我仍然必須將其添加到$scope.magazines,我不知道該怎麼做。

有沒有想法?

回答

0

只是pushMagazine到現有$scope.magazines(假設它是一個數組)

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

這不工作!但是,當我在成功回調中調用引用雜誌時,它似乎沒有包含我用'new Magazines()'分配給它的任何附加信息。 –

+0

嗯......奇怪的......確認首先是Magazines()函數是正確的,然後......嗯......之後不確定。似乎問題會在那裏出現。 – tymeJV

+0

Magazines()是ngResrouce工廠... –