From b7d2d57e0d366fa49091d8a6a24e402a9cf2dabd Mon Sep 17 00:00:00 2001 From: Markus Grigull Date: Tue, 21 Mar 2017 11:37:18 +0100 Subject: [PATCH] Fix updating elements in array-store --- src/stores/array-store.js | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/src/stores/array-store.js b/src/stores/array-store.js index b7c166a..20c006b 100644 --- a/src/stores/array-store.js +++ b/src/stores/array-store.js @@ -26,13 +26,20 @@ class ArrayStore extends ReduceStore { updateElements(state, newElements) { // search for existing element to update state.forEach((element, index, array) => { - newElements.forEach((updateElement, index) => { + newElements = newElements.filter((updateElement, newIndex) => { if (element._id === updateElement._id) { - array[index] = element; + // update each property + for (var key in updateElement) { + if (updateElement.hasOwnProperty(key)) { + array[index][key] = updateElement[key]; + } + } // remove updated element from update list - newElements.splice(index, 1); + return false; } + + return true; }); });