用例:用戶創建一個新任務,必須通過API向上遊發送。當該API返回成功時,我將其添加到顯示範圍。我有這樣的工作很好:Angular:推送,然後刪除一個項目
$http.post('some_url', newtask).success(function(data) {
$scope.tasks.push(data);
});
(newtask是一個簡單的對象,前面定義,這裏沒有顯示)。
問題是,API很慢(雖然可靠),但我希望這感覺像一個實時應用程序。因此,我想立即將新任務推送到$ scope,然後在API返回成功時將其替換爲「真實」任務。所以,我在前面加上上面:
$scope.tasks.push(newtask); // Add to UI immediately (provisionally)
現在發生的是,新的任務將立即添加,則任務的秒副本添加時,API返回。所以我想要做的是刪除第一個副本一旦添加第二個副本。
我似乎無法找到一種方法來做到這一點。或者我的方法都錯了? (我承認,這種方法確實感覺像是一種黑客,所以我願意接受建議)。
馬克,賓果!非常感謝,這提供了我所需要的洞察力。很好地工作。 – shacker