Как начать рендеринг, когда у содержимого Flatlist меньше прокрутки - React Native - PullRequest
0 голосов
/ 28 апреля 2018

Я пытаюсь сделать отфильтрованную бесконечную прокрутку, для этого я использую плоский список. Предметы различной высоты. Если в выбранном списке есть только один элемент или нет элемента, onEndReached не запускается из-за отсутствия прокрутки. Поэтому я не могу получить новые предметы. Любое решение для этого?

class Vehicle extends Component{

   loadMoreVehicles = () =>this.props.vehicleActions.fetchMoreVehicles 
  (this.state.page);

  renderItem = ({ item,index }) => {
      return  (this.filterVehicle(item))?  <VehicleList item ={item}/>:null
  }

 render(){
    <VehicleView  vehicles ={this.props.vehicles}/>
 }
 }


 const VehicleView =(props)=>(

  <FlatList data={props.vehicles}
            keyExtractor={(item, index) => index}
            onEndReached={props.loadMoreVehicles}
            onEndThreshold={100}
            removeClippedSubviews={false}
            renderItem={props.renderItem}
            initialNumToRender={10}
            extra={props}
            windowSize={10} />
 )

this.filterVehicle (item) возвращает true / false в зависимости от того, должен ли элемент отображаться или нет.

Заранее спасибо

1 Ответ

0 голосов
/ 28 апреля 2018

Было бы лучше, если бы вы предоставили больше деталей с соответствующими фрагментами кода. Но все же из того, что я понял, кажется, что вы хотите динамически установить режим прокрутки FlatList в зависимости от размера контента. Вы можете использовать onContentSizeChange опору для этого. На medium доступна очень хорошая статья о том, как на самом деле ее реализовать.

...