import React from 'react'; import { View, StyleSheet, Text } from 'react-native'; import PagerView from 'react-native-pager-view'; import Animated, { useHandler, useEvent } from 'react-native-reanimated'; const AnimatedPager = Animated.createAnimatedComponent(PagerView); export function usePagerScrollHandler(handlers: any, dependencies?: any) { const { context, doDependenciesDiffer } = useHandler(handlers, dependencies); const subscribeForEvents = ['onPageScroll']; return useEvent( (event) => { 'worklet'; const { onPageScroll } = handlers; if (onPageScroll && event.eventName.endsWith('onPageScroll')) { onPageScroll(event, context); } }, subscribeForEvents, doDependenciesDiffer ); } export default () => { const handler = usePagerScrollHandler({ onPageScroll: (e: any) => { 'worklet'; console.log(e.offset, e.position); }, }); return ( First page Second page Third page ); }; const styles = StyleSheet.create({ pagerView: { flex: 1, }, });