我想刷新在ui-grid中編輯過的行,而不是整個表。如何在ui-grid中刷新一行?
所以我的商業案例是,我編輯網格中的一行,觸發一個休息電話,我想更新網格中的特定行。
上休息呼叫成功:
$http.put(representation.getLink('reports').href, {
changes: manualModifications,
comment: comment
}).success(function(updatedEntities) {
for (var i = 0; i < updatedEntities.length; i++) {
angular.forEach(controller.gridOptions.data, function(entity) {
if (updatedEntities[i].factId === entity.factId) {
entity.value = updatedEntities[i].value;
entity.dataOrigin = updatedEntities[i].dataOrigin;
entity.isDirty = false;
}
});
}
controller.gridApi.core.refresh();
});
作品,以及用:
controller.gridApi.core.refreshRows();
此更新僅行的網格內,但仍刷新所有行。
我看過網格api,但我找不到這樣做。
我在想,因爲我有一個forEach循環內的網格行的引用應該可以更新只是單一的行。
在你的發佈代碼中,你甚至沒有使用從你的PUT返回的'data'變量,什麼是'updatedEntities'?你沒有足夠的張貼來給出一個不只是猜測的答案。 – tylerwal
updatedEntities是從後端返回的響應/數據,謝謝指出。 – aurelius