on master help sign in
fix: use functional state updates to handle multiple state mutations within the same render cycle
commit505ba4151be45daf377a382a330a3612e619b6e2 authorMatt Condon (shrugs) <mattgcondon@gmail.com> dateTue 11 Jun 2019, 12:54 (7 years ago) parent9aab1fe
1 file changed+6−3
src/bridge/store/history.js+6−3
src/bridge/store/history.js+6−3
@@ -16,12 +16,15 @@ function _useHistory(initialRoutes = []) {
1616 throw BRIDGE_ERROR.INVALID_ROUTE;
1717 }
1818
19− setHistory([...history, { name, data }]);
19+ setHistory(history => [...history, { name, data }]);
2020 },
2121 popAndPush: (name, data = {}) =>
22− setHistory([...history.slice(0, history.length - 1), { name, data }]),
22+ setHistory(history => [
23+ ...history.slice(0, history.length - 1),
24+ { name, data },
25+ ]),
2326 pop: (count = 1) =>
24− setHistory([...history.slice(0, history.length - count)]),
27+ setHistory(history => [...history.slice(0, history.length - count)]),
2528 peek: () => last(history),
2629 size: history.length,
2730 includes: name => includes(history.map(r => r.name), name),