reactjs - 动态改变React Native平面列表中的列数

标签 reactjs react-native react-native-flatlist

我有一个 FlatList,我想根据方向更改列数。但是,当我执行此操作时,我会出现红屏。根据红屏错误消息,我不太确定应该如何更改 key 属性。如有任何帮助,我们将不胜感激。

      // dynamically changing number of columns
      const numCols = orientation === constants.PORTRAIT ? 3 : 8

      <FlatList
        keyExtractor={(_, i) => i}
        numColumns={numCols} // assigning the number of columns
        horizontal={false}
        renderItem={({ item }) => <ListItem imageUrl={item.url} />}
      />}

red screen of death

最佳答案

来自documentation ,看来你应该做这样的事情

key={(this.state.horizontal ? 'h' : 'v')}

关于reactjs - 动态改变React Native平面列表中的列数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44291781/

相关文章:

reactjs - 如何在 React Router v4 中使用 <Redirect> 传递数据?

react-native - RN FlatList 中的两列

reactjs - React Native FlatList onViewableItemsChanged 回调在状态改变重新渲染后遇到错误

javascript - React-animarker 突出显示不随状态更改而更新

reactjs - 如何在 React Native 中创建功能齐全的帮助文件?

reactjs - 如何修复从 axios 响应 Reactjs 收到的网络错误

javascript - 在 React Navigation (React Native) 中转到另一个文件的页面

javascript - 如何处理 reducer 中的异步 promise

javascript - 使用异步存储可以存储大量数据吗? [ react native ]

react-native - 首次加载屏幕时,React Native FlatList scrollToIndex() 不起作用