From f65d87930c891a37366062bc9a6a0da75ae93ed2 Mon Sep 17 00:00:00 2001 From: Keni Ng Date: Thu, 2 Jan 2020 19:58:33 +0800 Subject: [PATCH] Fix current element not updated when children is updated externally --- src/components/TextLoop.tsx | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/components/TextLoop.tsx b/src/components/TextLoop.tsx index 51866ba..ea101a4 100644 --- a/src/components/TextLoop.tsx +++ b/src/components/TextLoop.tsx @@ -111,8 +111,12 @@ class TextLoop extends React.PureComponent { if (!isEqual(prevProps.children, children)) { // eslint-disable-next-line react/no-did-update-set-state - this.setState({ - elements: React.Children.toArray(children), + this.setState((state, props) => { + const newElements = React.Children.toArray(children); + return { + elements: newElements, + currentEl: newElements[state.currentWordIndex], + }; }); } }