zachgibson / react-native-parallax-swiper

Paged Parallax Swiper with Effects
MIT License
623 stars 76 forks source link

TypeError: Cannot read property 'scrollTo' of undefined in ParallaxSwiper #50

Open 11AA8R4 opened 3 years ago

11AA8R4 commented 3 years ago

Helloooo Issue: When using ParallaxSwiper inside a GestureHanddler component from react-native-gesture-handdler (softwarmansion, reanimated) and updating any useState hook the following error occours: TypeError: Cannot read property 'scrollTo' of undefined

Soution i found:

go to your ParallaxSwiper component page How to: in windows: ctrl click in ParallaxSwiper on your imports section of your .js page

replace this line: this.animatedScrollView = scrollView;

with this lines: if(scrollView!==null){ this.animatedScrollView = scrollView; }

and theses lines: this.animatedScrollView._component.scrollTo({ x: vertical ? 0 : scrollOffset, y: vertical ? scrollOffset : 0, animated, });

with theses lines: if(this.animatedScrollView._component!==undefined){ this.animatedScrollView._component.scrollTo({ x: vertical ? 0 : scrollOffset, y: vertical ? scrollOffset : 0, animated, }); }

why this solution: if you crtl+F the word scrollTo you will notice the final problem points to a variable named _component, when the error occours this var is undefined, so wrapping theses guys with conditions solved the problem for me

nickmccomb commented 3 years ago

Remove this in ParallaxSwiper.js to get around this issue:

componentWillReceiveProps(nextProps) {
  this.scrollToIndex(nextProps.scrollToIndex);
}