react-native - React Native FlatList 警告
问题描述
我试图实现一个具有动态项目大小的 FlatList,更具体地说,我的项目有时会占据全屏宽度,有时只有一半,因此设置 numColumns={2} 不起作用,我的解决方法如下所示:
<FlatList
ListHeaderComponent={this.header}
keyExtractor={item => item.id.toString()}
data={data}
contentContainerStyle={{ flexDirection: 'row' }}
renderItem={({ item }) => <Item item={item} />}
/>
一切都按预期工作,项目的宽度通过 item.width 应用。但是问题是每次渲染列表时,我都会收到此日志警告:
Warning: `flexWrap: `wrap`` is not supported with the `VirtualizedList` components.Consider using `numColumns` with `FlatList` instead.
有谁知道这如何影响列表的性能,如果它有影响,我该如何改进我的代码?
这就是我希望它的样子:
解决方案
要修复 numColumns={2} 你必须设置它 Horizontal={false} 所以它变成
<FlatList
ListHeaderComponent={this.header}
keyExtractor={item => item.id.toString()}
data={data}
horizontal={false}
numColumns={2}
contentContainerStyle={{ flexDirection: 'row' }}
renderItem={({ item }) => <Item item={item} />}
/>
推荐阅读
- scikit-learn - 在 TfidfVectorizer 上进行特征选择后删除冗余的 ngram
- javascript - 如何根据 GeoJSON 数据过滤散景视觉效果?
- javascript - 如何使用javascript单击从数组中删除特定对象
- python - 如何在 python 标记器库中设置词汇量?
- bash - 在linux中删除具有特定列数的行
- java - How can I configure Checkstyle to validate this simple import style?
- spring - 如何使用 Spring Cloud Kubernetes 以编程方式写入 ConfigMap 值?
- flutter - Dart // Flutter - 如何连接图像和音频来渲染静态视频
- reactjs - 当所有孩子都有钥匙时,反应抱怨没有钥匙的孩子
- java - Content-Length 分隔的消息正文过早结束 - Resttemplate