From 90d06dcf6fde398a71b54ee863e4df862746eeb3 Mon Sep 17 00:00:00 2001 From: Matthew Shao Date: Mon, 5 Feb 2018 08:28:02 +0800 Subject: [web] Fix unstable sorting by using 'stable' dependency --- web/src/js/ducks/utils/store.js | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) (limited to 'web/src/js/ducks/utils/store.js') diff --git a/web/src/js/ducks/utils/store.js b/web/src/js/ducks/utils/store.js index ac272650..ad2242ee 100644 --- a/web/src/js/ducks/utils/store.js +++ b/web/src/js/ducks/utils/store.js @@ -1,3 +1,5 @@ +import stable from 'stable' + export const SET_FILTER = 'LIST_SET_FILTER' export const SET_SORT = 'LIST_SET_SORT' export const ADD = 'LIST_ADD' @@ -35,7 +37,7 @@ export default function reduce(state = defaultState, action) { switch (action.type) { case SET_FILTER: - view = list.filter(action.filter).sort(action.sort) + view = stable(list.filter(action.filter), action.sort) viewIndex = {} view.forEach((item, index) => { viewIndex[item.id] = index @@ -43,7 +45,7 @@ export default function reduce(state = defaultState, action) { break case SET_SORT: - view = [...view].sort(action.sort) + view = stable([...view], action.sort) viewIndex = {} view.forEach((item, index) => { viewIndex[item.id] = index -- cgit v1.2.3