I have a flatlist and inside the onViewableItemsChangedRef I want to set the value of another ref inside the component like so:
const MyComponent= (): JSX.Element => {
const currentId = useRef('');
const onViewableItemsChangedRef = useRef(({ viewableItems }) => {
// I want to set currentId in here
});
return (
<FlatList
// other props here like data, renderItem, etc.
ref={ref}
keyExtractor={(item) => item.id
onViewableItemsChanged={onViewableItemsChangedRef.current}
/>
);
};
But when I try to set currentId.current inside of onViewableItemsChangedRef, it's always undefined.
I tried switching the useRef to useCallback instead, but I would keep getting the error listed here React Native FlatList onViewableItemsChanged callback encounter error after state changed rerender
Is there another way of doing this?