Use FeedList when the page needs both virtualized list rendering and feed
behaviors such as pull-to-refresh or load-more. Keep each row as a direct
list-item child with a stable item-key, and provide listId plus listType
so the underlying list can manage identity and layout.
Typeboolean | BounceableBasicProps·Defaultfalse
Accept true for default options. If you need to customize the bounceable effect, you can pass in the bounceableProps.
Typeboolean·Defaulttrue
Enable iOS bounces effect.
TypeReactNode
Children of list.
Typenumber·Default0
Specifies the cross axis spacing between Component in the list.
Typeboolean·Defaulttrue
Enable vertical scroll.
Typeboolean·Defaultfalse
Enable scrollBar.
Typeboolean·Defaultfalse
Enable scroll monitor.
Typestring
exposure-id for global exposure
Typestring
exposure-scene for global exposure
Typenumber·Default0
The position to which the list automatically scrolls on the initial load.
Typeboolean·Defaulttrue
Force touch event to send to List.
Typeboolean·Defaulttrue
Whether tapping the iOS status bar should scroll to top.
Type{factor: number, offset: number}
Paginated scrolling effects
Typestring
The id of the list.
Typenumber
Unit is px. Sets the auto-limiting size for the container. When child content size is below this value,the container size adjusts to fit content. When exceeded, the container locks at this size.
Typesingle | flow | waterfall
The layout type of list.
TypeReactElement·Defaultfalse
The loadmore area of the list.
Typenumber·Default0
Will override the lower-threshold. The item threshold from the lower edge of the list to trigger the onScrollToLower event.
TypeBaseGesture
If you want to use gesture, pass it here.
Typenumber·Default0
Specifies the major axis spacing between Component in the list.
Typestring
The name of list.
Typeboolean·Defaultfalse
Output layout complete detailed info.
TypeReactElement·Defaultfalse
When no more data to be inserted and the hasMoreData method is called, the loadMoreFooter will be switched to noMoreDataFooter.
Type(e: CommonEvent) => void
Exposure event for UI
Type(e: CommonEvent) => void
Disappear event for UI
Typenumber·Default0
Controls the number of nodes to be preloaded outside the on-screen nodes of the list. Not supported when listType is set to 'waterfall'.
Typeboolean | RefreshProps·Defaultfalse
Accept true for default options. If you need to customize the refresh effect, you can pass in the RefreshProps.
Typenumber·Default200
The time interval, in milliseconds, for the list to trigger the scroll event callback.
Typestring·Defaultfalse
The tag for scroll monitor.
Typevertical | horizontal·Default'vertical'
Set to 'vertical' for vertical scrolling and set to 'horizontal' for horizontal scrolling.
TypeScrollPropagationBehavior·Default'native'
Controls whether scroll events propagate to parent containers. For now, 'preventPropagate' needs to be used together with temporaryBlockScrollClass and temporaryBlockScrollTag on iOS.
Typeboolean·Defaultfalse
The lifecycle of element layer reuse. It solves the problem of reuse status disorder in the UI layer.
Typeboolean·Defaultfalse
Controls whether the attachedCells information is included in the bindScroll event detail.
Typenumber·Defaulttrue
The span count of list.
Typenumber·Default0
The offset of the sticky position from the top or bottom of the list.
Typeboolean·Defaulttrue
Used to control whether platform list enable overflow property on Android platform.
Typestring·Default'BDXLynxViewPager'
The specific class name of the container that is blocked when 'scrollPropagationBehavior' is set to be 'preventPropagate', must be informed by the container provider. For now, 'preventPropagate' needs to be used together with temporaryBlockScrollClass and temporaryBlockScrollTag on iOS.
This is a temporary props and will be deprecated on new Lynx SDK version.
Typenumber·Default0
Used to specify the native container tag that is blocked when 'scrollPropagationBehavior' is set to be 'preventPropagate', corresponding to the Tag attribute of UIView. Needs to be specified by the native container provider. For now, 'preventPropagate' needs to be used together with temporaryBlockScrollClass and temporaryBlockScrollTag on iOS.
This is a temporary props and will be deprecated on new Lynx SDK version.
Typenumber·Default0
Will override the upper-threshold. The item threshold from the upper edge of the list to trigger the onScrollToUpper event.
Typeboolean·Defaulttrue
Use refactored list.
Type(e: EventHandler | undefined) => void
Same as onLongPress, but stops the event from propagating to parent elements.
Type(e: EventHandler | undefined) => void
Same as onTouchCancel, but stops the event from propagating to parent elements.
Type(e: EventHandler | undefined) => void
Same as onTouchEnd, but stops the event from propagating to parent elements.
Type(e: EventHandler | undefined) => void
Same as onTouchMove, but stops the event from propagating to parent elements.
Type(e: EventHandler | undefined) => void
Same as onTouchStart, but stops the event from propagating to parent elements.
Type0 | 1 | 2 | 3·Default0
Display debug logs. 0: none, 1: error, 2: info, 3: verbose
Type(e: EventHandler | undefined) => void
Send when UI has changed viewport size.
Type(e: {detail: {diffResult?: {insertions: number[], move_from: number[], move_to: number[], removals: number[], update_from: number[], update_to: number[]}, layout-id: number, visibleCellsAfterLayout?: ListItemInfo[], visibleCellsBeforeLayout?: ListItemInfo[]}}) => void
Send when list's items are updated and this update process has finished.
Type(e: EventHandler | undefined) => void
Send when a touch-point is held on the UI for a period of time.
Type(e: ScrollEvent) => void
Being triggered when scrolling occurs.
Type(e: [object Object] | undefined) => void·Defaultundefined
Being triggered when scrolling stops.
Type(e: ListScrollStateChangeEvent) => void
The scroll state change.
Type(e: [object Object] | undefined) => void·Defaultundefined
Being triggered when scrolling to lower.
Type(e: [object Object] | undefined) => void·Defaultundefined
Being triggered when scrolling to upper.
Type(e: ListSnapEvent) => void
Send when list snaps to an item.
Type(e: EventHandler | undefined) => void
Send when a touch-point is tapped on the UI.
Type(e: EventHandler | undefined) => void
Send when a touch event is interrupted or cancelled before it is completed.
Type(e: EventHandler | undefined) => void
Send when a touch-point is removed from the UI.
Type(e: EventHandler | undefined) => void
Send when a touch-point is moving on the UI.
Type(e: EventHandler | undefined) => void
Send when a touch-point is placed on the UI.
Type(rate: px | rpx | ppx | rem | em | vw | vh, start: boolean, autoStop: boolean) => void
Scroll the list to the specified position and offset.
Type(hasMore: boolean) => void
When no more data has to be inserted, call this method to replace loadMoreFooter to noMoreDataFooter.
Type() => void
After the startrefresh event, calling this method will end the refresh state and make the refreshHeader bounces hack.
Type(success: (res: unknown) => void, fail: (res: unknown) => void) => void
Scroll the list to the specified position and offset.
Type(animated: boolean, alignTo: top | bottom | middle | none, listItemID: string, id: string, index: number, offset: number, success: (res: unknown) => void, fail: (res: unknown) => void) => void·Defaultfalse
Extends standard list's scrollTo. This method uses worklet and supports parameter id like 'scrollIntoView' method for scroll-view. As list is lazy, index is necessary in this method to find where id's component located. useRefactorList={true} is required
Type(animated: boolean, alignTo: top | bottom | middle | none, index: number, offset: number, success: (res: unknown) => void, fail: (res: unknown) => void) => void·Default0
Scroll the list to the specified position and offset.
Type() => void
When enable-refresh is true, calling this function causes the refreshHeader to be fully exposed, triggering the startrefresh event. Afterwards, refreshHeader is attached to the top of List.