我正在按照本教程https://medium.com/appandflow/react-native-collapsible-navbar-e51a049b560a创建折叠的导航栏。做事很好,但是有一个问题,在本教程中,指导老师设置了FlatList的道具滚动:
onScroll={Animated.event( [{ nativeEvent: { contentOffset: { y: this.state.scrollAnim } } }], { useNativeDriver: true },)}
但是我已经将此onScroll Props用于:
onScroll={event => this.handleScroll(event)}
我的句柄滚动将验证滚动是否结束并加载更多feed:
handleScroll (event) {
var endOfPage = event.nativeEvent.layoutMeasurement.height + event.nativeEvent.contentOffset.y >=
event.nativeEvent.contentSize.height;
if (endOfPage) {
this.getSections()
}
}
我不能同时运行我的函数和autor命令。有没有办法执行这两个OnScroll?
我的componenet AnimatedFlatList(第一个
OnScroll
将不起作用,因为另一个将覆盖最后一个): <AnimatedFlatList
contentContainerStyle={[collapse.contentContainer, {paddingTop: this.props.navigation.state.params.category == '' ? 166.5 : 96.5}]}
onMomentumScrollBegin={this._onMomentumScrollBegin}
onMomentumScrollEnd={this._onMomentumScrollEnd}
onScroll={event => this.handleScroll(event)}
onScrollEndDrag={this._onScrollEndDrag}
data={this.state.sections}
renderItem={this._renderSectionItem}
extraData={this.state}
keyExtractor={(item, index) => index.toString()}
removeClippedSubviews
onScroll={Animated.event( [{ nativeEvent: { contentOffset: { y: this.state.scrollAnim } } }], { useNativeDriver: true },)}
/>
最佳答案
基于this answer:
onScroll={Animated.event(
[{ nativeEvent: { contentOffset: { y: this.state.scrollAnim } } }],
{
useNativeDriver: true,
listener: event => this.handleScroll(event)
});
}}
关于javascript - 如何执行这两个OnScrolls?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/55909043/