首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >反应本机模块化-不能在模块化内滚动FlatList

反应本机模块化-不能在模块化内滚动FlatList
EN

Stack Overflow用户
提问于 2022-04-02 07:57:10
回答 1查看 562关注 0票数 1

我使用的是react-native-modalizeflatListProps,但是我不能滚动flatList,我尝试了panGestureEnabled={false},或者删除了height样式,但是没有一个修复它,下面是我的代码:

代码语言:javascript
复制
<Modalize
  ref={ref}
  children={children}
  adjustToContentHeight={true}
  onOverlayPress={closeModal}
  onClosed={onCloseCallback}
  HeaderComponent={renderHeader}
  flatListProps={
    listData?.length > 0
      ? {
          data: listData,
          renderItem: renderListItem,
          ItemSeparatorComponent: renderSeparator,
          keyExtractor: listKeyExtractor,
          contentContainerStyle: dStyles.dataList,
        }
      : undefined
  }
  modalStyle={styles.borderRadius}
/>
代码语言:javascript
复制
const dStyles = StyleSheet.create({
    dataList: {
      height: 400,
    },
  });

我检查listData,数组有63项,但flatList只呈现前9项。

EN

回答 1

Stack Overflow用户

发布于 2022-04-02 08:45:25

通过在flatListProps中添加这些道具,修正了以下问题:

initialNumToRender: 10

maxToRenderPerBatch:10

并添加到<Modalize支柱disableScrollIfPossible={false}

我不知道为什么,但height也需要删除。这是新代码:

代码语言:javascript
复制
<Modalize
      ref={ref}
      children={children}
      adjustToContentHeight={true}
      disableScrollIfPossible={false}
      onOverlayPress={closeModal}
      onClosed={onCloseCallback}
      HeaderComponent={renderHeader}
      flatListProps={
        listData?.length > 0
          ? {
              data: listData,
              renderItem: renderListItem,
              ItemSeparatorComponent: renderSeparator,
              keyExtractor: listKeyExtractor,
              initialNumToRender: 10,
              maxToRenderPerBatch: 10,
            }
          : undefined
      }
      modalStyle={styles.borderRadius}
    />

正如我前面提到的,我不能限制FlatList的高度,所以如果列表足够长,<Modalize就会全屏展开,这就是这个解决方案的局限性。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/71715804

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档