Listview
- category: UI
- chinese: 列表
- type: UI组件
何时使用
列表组件
API
ListView
属性 | 说明 | 类型 | 默认值 |
---|
renderHeader | 头部 | function | 无 |
renderFooter | 底部 | function | 无 |
renderRow | 渲染单行的方法 | function | 无 |
dataSource | 数据源 | array | 无 |
onEndReached | 加载到底部时触发 的事件 | 原onloadmore 事件 | 无 |
onEndReachedThreshold | 加载更多的位移设置量 | string | 500 |
showScrollbar | 是否显示滚动条 | bool | 无 |
resetLoadmore | 重设loadmore计数 [以下单独说明] | function | 无 |
关于ListView的子组件
RefreshControl
用于控制下拉刷新,可以在renderHeader 方法中使用,用于控制下拉刷新。此组件只能在客户端生效Cell
此组件在ListView 组件渲染时将被自动加上,因此开发者不需要关注此组件。
resetLoadmore 实例方法
由业务自行控制的是否触发loadmore事件
resetLoadmore api 的调用,发生在 onEndReached 触发,但是数据没有变化或者数组变短,此时 native 设置为不再触发 onEndReached 事件了。
如果你不需要这个看起来聪明的设定,可以调用 resetLoadmore 清除标记位。
resetLoadmore 相关ISSUE
//reset事件可以有button或其他方式控制,实现无限下拉的节流
reset=(e)=>{
this.refs.mylist.resetLoadmore();
}
render(){
return (
<ListView ref="mylist"
onChange={this.change}
renderHeader={this.renderHeader}
renderFooter={this.renderFooter}
renderRow={this.renderItem.bind(this)}
dataSource={this.state.data}
><ListView/>
)
}