SectionListView
屬性
- ItemSeparatorComponent
{highlighted,leadingItem,leandingSection,section,trailingItem}
返回一個行與行之間的分割組件陵且,不會出現(xiàn)在第一行之前和最后一行之后。-
highlighted
當前行(分割線上面??的Item)是否是高亮狀態(tài) -
leadingItem
當前行分配到的數(shù)據(jù)源 -
leandingSection
目前我也沒搞明白啥意思 這里是undefined
-
section
當前段分配到的數(shù)據(jù)源 -
trailingItem
尾段數(shù)據(jù)
-
- ListEmptyCompone
沒有接收參數(shù)
渲染一個cell為空時的緩沖組件 - ListFooterComponent
沒有接收參數(shù)
渲染整個組件的Footer - ListHeaderComponent
沒有接收參數(shù)
渲染整個組件的Header
-
SectionSeparatorComponent
{highlighted,leadingItem,leandingSection,section,trailingItem}
段分割組件-
highlighted
當前行(分割線上面??的Item)是否是高亮狀態(tài) -
leadingItem
當前行分配到的數(shù)據(jù)源 這里是undefined
-
leandingSection
目前我也沒搞明白啥意思 這里是undefined
-
section
當前段分配到的數(shù)據(jù)源 -
trailingItem
尾段數(shù)據(jù)
-
extraData
如果有除data以外的數(shù)據(jù)用在列表中(不論是用在renderItem還是Header或者Footer中)代芜,請在此屬性中指定。同時此數(shù)據(jù)在修改時也需要先修改其引用地址(比如先復制到一個新的Object或者數(shù)組中)弄兜,然后再修改其值州泊,否則界面很可能不會刷新。
文檔說的挺亂乾蛤,總而言之言而總之:sectionList的刷新首先決定于Data邑滨,當Data沒變化日缨,但是你想強制刷新UI的時候,有個狀態(tài)控制掖看,那么這個狀態(tài)控制需要在這里寫一下匣距,關聯(lián)一下,否則你的這個狀態(tài)不會被關聯(lián)哎壳,UI不會被刷新毅待。
initialNumToRender
指定一開始渲染的item 數(shù)量,預加載item 數(shù)keyExtractor
(item: ItemT, index: number) => string
此函數(shù)用于為給定的item生成一個不重復的key。Key的作用是使React能夠區(qū)分同類元素的不同個體归榕,以便在刷新時能夠確定其變化的位置尸红,減少重新渲染的開銷。若不指定此函數(shù)刹泄,則默認抽取item.key作為key值外里。若item.key也不存在,則使用數(shù)組下標特石。onEndReachedThreshold
number
數(shù)值盅蝗。決定當距離內容最底部還有多遠時觸發(fā)onEndReached回調。注意此參數(shù)是一個比值而非像素單位姆蘸。比如墩莫,0.5表示距離內容最底部的距離為當前列表可見長度的一半時觸發(fā)-
onEndReached
(info: {distanceFromEnd: number}) => void
傳入一個對象info,info包含number類型的
distanceFromEnd
屬性逞敷。 -
onViewableItemsChanged
(info: {viewableItems: Array<ViewToken>, changed: Array<ViewToken>}) => void
- viewableItems 可是Item對應的數(shù)據(jù)
- changed 改變的數(shù)據(jù)
可視元素發(fā)生變化時調用
refreshing
boolean
等待新數(shù)據(jù)加載時此屬性設置為true狂秦,列表會顯示出正在加載的符號-
renderItem
(info: {item: Item, index: number}) => ?React.Element<any>
渲染每一個section中的item- item 每個item渲染所需數(shù)據(jù)
- index item在其section中的位置索引
renderSectionHeader?:
{section: SectionT}
接收一個對象,這個對象包含section
屬性推捐,
返回一個組件故痊,用作段頭-
sections
ReadOnlyArray<SectionT>
傳入一個sections數(shù)組
[ {data:[{name:'nader'},{name:'chris'}],key:'A'}, {data:[{name:'nick'},{name:'amanda'}],key:'B'}, {data:[{name:'nick'},{name:'amanda'}],key:'C'}, {data:[{name:'nick'}],key:'D'},
]
```
- stickySectionHeadersEnabled
boolean
方法
-
scrollToLocation (params: object)
-- {sectionIndex,itemIndex}:代碼控制 UI交互跳轉到指定位置 -
recordInteraction()
告訴ListView 交互已經(jīng)發(fā)生了 -
flashScrollIndicators()
顯示指示滾動