tsdmrfth / react-native-steve Goto Github PK
View Code? Open in Web Editor NEWReact Native horizontal scroll view component as seen on Clubhouse tags
License: MIT License
React Native horizontal scroll view component as seen on Clubhouse tags
License: MIT License
Great library! I'm able to get it to work on iOS, But on android even after I followed all instructions from react-native-animated 2, I only able to render but not able to scroll
I'd expect there to be a sensible default that works in the case that it isn't specified.
I'm testing this with a ScrollView
. It's not possible to scroll vertically when swiping on this component as the PanGestureHandler
captures it. An improvement would be for this component to only capture horizontal panning, but not vertical.
I've been using a fork where I modified the reanimated dependency specification to ^2 to satisfy another dependency that currently only works for reanimated 2.0. Seems to work without a hitch so I suggest making the peer dependency more liberal.
Really very good component, I've used this component in one of my apps but don't know how to make it work for RTL? any reference and help would be highly appreciated. Thank you so much.
Currently, the example shows 3 rows based on the number of items in topics
. Is the number of rows configurable?
Don't have a reproduction for you, but I've observed when updating data
, the following error:
TypeError Cannot read property 'layout' of undefined
This error is located at:
in Item (at Steve.js:107)
in Items (at Steve.js:200)
in RCTView (at View.js:32)
in View (at createAnimatedComponent.js:448)
in AnimatedComponent(View) (at createAnimatedComponent.js:459)
in AnimatedComponentWrapper (at Steve.js:199)
in RCTView (at View.js:32)
in View (at createAnimatedComponent.js:448)
in AnimatedComponent(View) (at createAnimatedComponent.js:459)
in AnimatedComponentWrapper (at Steve.js:198)
in PanGestureHandler (at Steve.js:195)
I've also noticed that layout recalculation isn't performed when updating data
(items may overlap each other). The library should support data
updates, or at a minimum warn users.
That's at least my guess. Here's the likely offending line:
const firstKey = keyExtractor(data[firstIndex], firstIndex)
const secondKey = keyExtractor(data[secondIndex], secondIndex)
The assumption is that the 1
index (whether firstIndex or secondIndex depending on RTL) is valid, which isn't necessarily the case.
If you begin an inertial scroll but place finger down to stop it, it will not stop. It only stops if you actually move your finger.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.