react-native-draggable-flatlist icon indicating copy to clipboard operation
react-native-draggable-flatlist copied to clipboard

FlashList Integration

Open hknakn opened this issue 3 years ago • 4 comments

Is your feature request related to a problem? Please describe. I appreciate your work and I use this library. I see some performance issues and FPS drop when I have more than 1 NestableDraggableFlatlist in one screen. If I have more it gets worse.

Describe the solution you'd like I know that you are working on reanimated 3 and that may improve that performance. I want to suggest you to use FlashList library for FlatList. I know that it's really good library about performance side. Here is the library https://github.com/Shopify/flash-list If you want to review.

Describe alternatives you've considered I don't have any other specific alternatives but It's obviuos that I have performance issues exactly about first render so any alternatives that can fix it would be great

hknakn avatar Aug 15 '22 12:08 hknakn

+1, giving the option to replace FlatList with FlashList would be excellent, although I'm not sure how much of a technical hurdle it would be. I might try working on this integration locally and respond to this thread if I make any progress.

heythisischris avatar Sep 12 '22 00:09 heythisischris

Should be relatively easy to do as it is mostly a drop in for FlatList anyway.

callaars avatar Sep 19 '22 10:09 callaars

+1. Flashlist would really supercharge this component! @heythisischris - Did you have any luck integrating locally? I took a look and doesn't appear straight-forward as react-native-draggable-flatlist is dependent upon react-native-gesture-handler's implementation of FlatList.

carbopilot avatar Dec 22 '22 11:12 carbopilot

@carbopilot I did some preliminary testing by replacing FlatList with FlashList but couldn't get it working. The project is too complex for me to understand at a glance so I couldn't debug it either. The errors I ran into were related to items being undefined (which they weren't originally) or having something to do with refs and functional components. Both crashed to application back to expo go:

TypeError: undefined is not an object (evaluating 'item.key')
Warning: Function components cannot be given refs. Attempts to access this ref will fail. Did you mean to use React.forwardRef()?
Check the render method of `ViewRenderer`.

Someone is working on a separate project here https://github.com/Spicy-Sparks/react-native-flashdrag-list but I am not sure of the status as it is very new.

Swiftwork avatar Dec 23 '22 18:12 Swiftwork