From e5285d73ad3891a6c606ae27e1fd21418aa7f000 Mon Sep 17 00:00:00 2001 From: Artur Yorsh <10753921+artyorsh@users.noreply.github.com> Date: Mon, 29 Jul 2019 19:30:39 +0300 Subject: [PATCH] fix(ui): view-pager - external state control --- src/framework/ui/viewPager/viewPager.component.tsx | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/src/framework/ui/viewPager/viewPager.component.tsx b/src/framework/ui/viewPager/viewPager.component.tsx index 1cb1e11bb..3e81c9680 100644 --- a/src/framework/ui/viewPager/viewPager.component.tsx +++ b/src/framework/ui/viewPager/viewPager.component.tsx @@ -145,6 +145,13 @@ export class ViewPager extends React.Component implements PanRes this.contentOffset.addListener(this.onContentOffsetAnimationStateChanged); } + public componentDidUpdate(prevProps: ViewPagerProps) { + if (prevProps.selectedIndex !== this.props.selectedIndex) { + const index: number = this.props.selectedIndex; + this.scrollToIndex({ index, animated: true }); + } + } + public componentWillUnmount() { this.contentOffset.removeAllListeners(); }