ScrollComponents 接口列表

RecyclerView 容器组件

开发者通过传入不同的视图管理器(如ListManager,WaterFlowManager,GridManager),创建对应的父容器组件视图。

参数 说明
viewManager:IBaseManager 视图绑定的视图管理器

PartReuse 容器组件

复用容器组件,绑定一个子组件,当绑定的子组件需要销毁时,会自动进入复用池,需要创建的时候,从复用池获取,并更新数据上屏。

参数 说明
type:string 用户设置的节点类型
builder:wrappedBuilder node节点绑定的组件模板
data:ESObject 组件绑定的数据

NodeItem

子组件节点,绑定在PartReuse中。

属性:

属性 类型 说明
type string 用户设置的模板节点类型
id number node节点ID
index number node节点对应的index
builder wrappedBuilder node节点绑定的组件模板
node BuilderNode node节点绑定的实体布局组件
status NodeItemStatus node节点的状态
nodeType NodeItemType 子节点系统类型
data T 组件绑定的数据
container ContainerType node节点关联的父组件(ListItem等),ContainerType 是NodeItemType的联合类

接口:

接口 参数 参数说明 接口说明
setData (data: ESObject)=>void 节点数据 设置节点的数据
destroy ()=>void 销毁节点

NodeItemType
节点系统类型

参数 说明
NONE 无系统子节点
PART_ITEM 默认节点
LIST_ITEM ListItem节点
FLOW_ITEM WaterFlowItem节点
LIST_ITEM_GROUP ListItemGroup节点
GRID_ITEM GRID_ITEM节点

NodeItemStatus
节点状态

参数 说明
DESTROY 被销毁
USING 使用中
RECYCLED Item节点进入复用池
RECYCLED_WITH_PARENT PartReuse节点进入复用池
PRE_CREATE 预创建

RecycledPool

组件复用池,每个视图管理器默认绑定一个组件复用池,开发者可以通过视图管理器对复用池进行管理。

接口 参数 参数说明 接口描述
getRecycledNodeCount ( type:string)=>number 组件模板类型 获取复用池指定模板类型节点数量
setMaxRecycledSize (type:string, count:number)=>void 组件模板类型,最大数据 设置指定模板类型节点在复用池中的最大可容纳量
clear (type?:string)=>void 组件模板类型 如果传入参数,则删除传入类型的节点,如果不传参数,会删除复用池所有的节点。

BaseManager

视图管理器基类,提供视图管理,事件监听,懒加载,组件复用,组件预创建等能力。
对外提供的ListManager,WaterFlowManager 和GridManager 都是BaseManager的子类,属性和方法一致,开发者根据业务选择合适的视图管理器。

参数:

参数 说明
config: Config 视图管理器配置

属性:

属性 类型 属性说明
id number 视图管理器的id
type ManagerTypeEnum 视图管理器的类型
listener Listener 事件监听器
nodeAdapter LazyNodeAdapter 懒加载适配器,为视图提供懒加载能力

接口

接口 参数 参数说明 接口说明
setViewStyle (options?: WaterFlowOptions/ListOptions/GridOptions)=>WaterFlowAttribute/ListAttribute/GridAttribute 组件参数对象 视图属性
setItemViewStyle (styleCallback: (view: FlowItemInterface, index: number, data: any) => void)=> void 属性设置回调 视图属性
onViewCreate (view:ESObject) => void 视图对象 根节点组件创建成功的回调
onWillCreateItem (index:number, data:ESObject)=> NodeItem 子节点索引,数据源 item节点将要创建时的回调
onWillUpdateItem (node:NodeItem) => void 设置数据之后即将更新的节点 item节点将要更新之前的回调
onDataAdapter (data:Params, node: NodeItem, index:number) => void 数据源,子节点对象,节点索引 将数据源设置到子节点对象(如果调用upDate接口时,isReload参数设置为false,则必须要调用)
onWillRecycle (node:NodeItem) => void 视图子节点对象 Item节点将要回收时的回调
registerRecyclePool (pool:RecycledPool) => void 组件复用池 注册复用池
getRecyclePool () => RecycledPool 获取复用池实例
registerNodeItem (type:string, builder:wrappedBuilder) => void 组件模板类型,组件构建函数 注册一个节点复用模板
dequeueReusableNodeByType (type:string) => NodeItem 组件模板类型 获取一个指定类型的复用节点 。如果复用池存在节点,则直接返回可复用节点,如果没有则创建一个节点
setDataSource (data:ESObject[]) => void 数据源对象数组 设置数据源
preCreate ( type: string, count: number = 1) 组件模板类型,预创建的节点的个数 预创建指定类型节点个数,并添加到复用池
visibleAreaChanged (start:number,end:number) 预取数据起点,预取数据终点 当可见区域发生变化时调用,预期节点数据
registerFetchCallback (callback:Prefetcher.FetchCallback => void) 预取回调 注册预取函数回调
registerCancelCallback (callback:Prefetcher.CancelCallback => void) 取消预取回调 注册取消预期函数回调

Config

参数 说明
defaultNodeItem 视图管理器默认子节点模板
context UI上下文

ManagerTypeEnum

视图管理器视图类型

名称 说明
LIST List布局视图
WATER_FLOW WaterFlow布局视图
GRID Grid布局视图

LazyNodeAdapter 类

基于NodeAdapter为视图管理器提供懒加载能力。

属性:

属性 类型 属性说明
dataSource PrefetchDataSource 数据源操作对象

接口:

接口 参数 参数说明 接口说明
pushData (data:ESObject[]) => void 数据源对象数组 批量添加数据
insertData (from:number, data: ESObject[]) => void 插入位置索引,数据源对象数组 从索引位置将数组批量添加数据
updateData (from:number, data: ESObject[], isReload: boolean = true) => void 修改位置索引,数据源对象数组,是否重新加载 从索引位置开始按照传入的数组更新数据(isReload默认为true,更新的时候节点会重新创建加载,如果设置为false则节点只更新数据,当参数设置为false时必须要实现视图管理器的onDataAdapter接口)
getData (index:number) => ESObject 目标位置索引 根据索引查找数据
deleteData (from:number, count:number) => void 目标删除位置索引 ,删除元素的个数 从索引为from的位置开始删除 count个数据
moveData (from:number, to:number) => void 初始位置索引,目标位置索引 将from位置的数据移动到to位置

错误码

错误类型 错误码 错误信息
SYSTEM_ERROR 50000001 内部错误
NODE_CREATE_ERROR 50000002 Node创建失败, 未找到可用模版
REUSE_WARN 50000010 复用失败, 未找到可复用节点