需求:React Native FlatList在每次添加item时候滚动到底部
...
onContentSizeChange = (contentWidth, contentHeight) => {
const newLength = this.state.data.length;
newLength > this._lastDataLength && requestAnimationFrame(() => this._flatListRef && this._flatListRef.scrollToEnd({ animated: true }));
this._lastDataLength = newLength;
};
refHandler = ref => {
this._scrollViewRef = ref;
//如果你用的是 AnimatedFlatList,这里应该这样写
//this._scrollViewRef = ref && ref.getNode();
};
render() {
const {data} = this.state;
return (
<FlatList
data={data}
ref={this.refHandler}
keyExtractor={this.keyExtractor}
renderItem={this.renderItem}
onContentSizeChange={this.onContentSizeChange}
/>
);
}
...