mirror of
https://github.com/facebook/react-native.git
synced 2025-11-01 09:14:26 +00:00
+17
-11
@@ -19,21 +19,27 @@
|
||||
</ul>
|
||||
<p>If you don't need section support and want a simpler interface, use <a href="/react-native/docs/next/flatlist.html"><code><FlatList></code></a>.</p>
|
||||
<p>Simple Examples:</p>
|
||||
<pre><code class="hljs"><SectionList
|
||||
renderItem={({item}) => <ListItem title={item} />}
|
||||
renderSectionHeader={({section}) => <Header title={section.title} />}
|
||||
sections={[ // homogeneous rendering between sections
|
||||
{data: [...], title: ...},
|
||||
{data: [...], title: ...},
|
||||
{data: [...], title: ...},
|
||||
<pre><code class="hljs">// Example 1 (Homogeneous Rendering)
|
||||
<SectionList
|
||||
renderItem={({ item, index, section }) => <Text key={index}>{item}</Text>}
|
||||
renderSectionHeader={({ section: { title } }) => <Text style={{ fontWeight: 'bold' }}>{title}</Text>}
|
||||
sections={[
|
||||
{ title: 'Title1', data: ['item1', 'item2'] },
|
||||
{ title: 'Title2', data: ['item3', 'item4'] },
|
||||
{ title: 'Title3', data: ['item5', 'item6'] },
|
||||
]}
|
||||
keyExtractor={(item, index) => item + index}
|
||||
/>
|
||||
|
||||
// Example 2 (Heterogeneous Rendering / No Section Headers)
|
||||
const overrideRenderItem = ({ item, index, section: { title, data } }) => <Text key={index}>Override{item}</Text>
|
||||
|
||||
<SectionList
|
||||
sections={[ // heterogeneous rendering between sections
|
||||
{data: [...], renderItem: ...},
|
||||
{data: [...], renderItem: ...},
|
||||
{data: [...], renderItem: ...},
|
||||
renderItem={({ item, index, section }) => <Text key={index}>{item}</Text>}
|
||||
sections={[
|
||||
{ title: 'Title1', data: ['item1', 'item2'], renderItem: overrideRenderItem },
|
||||
{ title: 'Title2', data: ['item3', 'item4'] },
|
||||
{ title: 'Title3', data: ['item5', 'item6'] },
|
||||
]}
|
||||
/>
|
||||
</code></pre>
|
||||
|
||||
Reference in New Issue
Block a user