UNPKG

react-native-waterfall-list-view

Version:

基于官方 flatlist 实现的 多列 不定高 瀑布流组件 不依赖任何第三方

33 lines (32 loc) 943 B
import React from 'react'; import { FlatList, type FlatListProps, type ViewStyle } from 'react-native'; export type ItemData = { offsetTop: number; itemH: number; itemData: any; columnIndex: number; index: number; }; export type RowData = { rowIndex: number; rowData: ItemData[]; rowH: number; rowOffsetTop: number; }; export type IRenderItemProps = { item: ItemData; index: number; row: RowData; }; export interface IWaterFallListProps extends Omit<FlatListProps<RowData>, 'renderItem' | 'ItemSeparatorComponent'> { renderItem: ({ item, index, row }: IRenderItemProps) => React.ReactElement | null; ItemSeparatorComponent?: () => JSX.Element; children?: React.ReactNode; rowStyle?: ViewStyle; data: any[]; onItemLayoutDone?: () => void; } export interface IWaterFallList { refreshList: (offset?: number, animated?: boolean) => void; flatList: FlatList | null; }