FlatList ist ein Container, der zum Laden von Listenelementen verwendet werden kann. Es bietet Unterstützung für Kopf- und Fußzeilen, Unterstützung für mehrere Spalten, vertikales/horizontales Scrollen, Lazy Loading und mehr.
Hier sind einige wichtige Funktionen von FlatList:
<FlatList data={DataContainer} renderItem={ yourenderItem} keyExtractor={item => item.id} />
Array mit den anzuzeigenden Daten.
renderItem({ item, index, seperators });< /th> | |
---|---|
Index – Jedes Element hat einen Index. Trennzeichen – ist eine Funktion, die beim Rendern von Requisiten hilft. Verfügbare Funktionen sind: | |
ListEmptyComponent | Eine Komponentenklasse, eine Renderfunktion oder ein Renderelement, das aufgerufen wird, wenn die Liste leer ist. Diese Komponente kann hilfreich sein, wenn Sie eine Aktion ausführen möchten, während die Liste leer ist.
|
ListFooterComponentStyle | Das erforderliche Styling für die Fußzeilenkomponente kann hier vorgenommen werden. |
ListHeaderComponent | Komponentenklasse, Renderfunktion oder Renderelement, das über allen Elementen gerendert wird. |
ListHeaderComponentStyle | Das erforderliche Styling für die Header-Komponente kann hier vorgenommen werden. |
< /strong>Wenn diese Eigenschaft auf „true“ gesetzt ist, wird das Element horizontal dargestellt. | keyExtractor |
Extrahiert eindeutige Schlüssel für einen bestimmten Index. Dieser Schlüssel wird zum Zwischenspeichern und auch zum Verfolgen der Nachbestellung von Artikeln verwendet. (item: object, index: number) => string; | |
Dieses Beispiel zeigt, wie FlatList funktioniert. Um FlatList zu verwenden, importieren Sie zunächst die Komponenten - strong>separators.highlight(), separators.unhighlight(), separators.updateProps(). Nach dem Login kopieren | Ich benötige FlatList zusammen mit anderen Komponenten wie Text, Ansichten, Stylesheets usw. Sie werden wie oben gezeigt importiert. Nachdem der Import abgeschlossen ist, muss ich die Daten in FlatList anzeigen. Die Daten werden in this.state.data gespeichert, wie unten gezeigt – |
Die folgende Funktion ist dafür verantwortlich, das Element abzurufen und dasselbe in der Textkomponente anzuzeigen, wie unten gezeigt – this.state = { data: [ { name: "Javascript Frameworks", isTitle: true }, { name: "Angular", isTitle: false }, { name: "ReactJS", isTitle: false }, { name: "VueJS", isTitle: false }, { name: "ReactNative", isTitle: false }, { name: "PHP Frameworks", isTitle: true }, { name: "Laravel", isTitle: false }, { name: "CodeIgniter", isTitle: false }, { name: "CakePHP", isTitle: false }, { name: "Symfony", isTitle: false } ], stickyHeaderIndices: [] }; Nach dem Login kopieren | Die Textkomponente wird in die Ansichtskomponente eingebunden. item.isTitle ist eine Variable. Überprüfen Sie, ob sie wahr/falsch ist, setzen Sie sie entsprechend auf Fettdruck und weisen Sie ihr eine Farbe zu. Um FlatList zu implementieren | Hier ist die FlatList-Implementierung mit Daten- und renderItem-Eigenschaften. < /tr>
wird der Eigenschaft
data
zugewiesen und die Funktion
wird der Eigenschaft
renderItem
Anhand Ihrer Daten können Sie der Schlüsseleigenschaft mitteilen, welche die einzige im Datenarray sein wird und den gleichen Wert für props keyExtractor bereitstellen soll. Wenn nicht angegeben, wird der Array-Index als
key-Wert behandelt. Also behandeln wir den Namen als einen eindeutigen Schlüssel und weisen ihn dem keyExtractor zu. <View style={styles.container}>
<FlatList data={this.state.data} renderItem={this.renderItem} keyExtractor={item => item.name} />
</View>
keyExtractor={item => item.name}
import React from "react"; import { FlatList , Text, View, StyleSheet, StatusBar } from "react-native"; export default class App extends React.Component { constructor() { super(); this.state = { data: [ { name: "Javascript Frameworks", isTitle: true }, { name: "Angular", isTitle: false }, { name: "ReactJS", isTitle: false }, { name: "VueJS", isTitle: false }, { name: "ReactNative", isTitle: false }, { name: "PHP Frameworks", isTitle: true }, { name: "Laravel", isTitle: false }, { name: "CodeIgniter", isTitle: false }, { name: "CakePHP", isTitle: false }, { name: "Symfony", isTitle: false } ], stickyHeaderIndices: [] }; } renderItem = ({ item }) => {return ();}; render() { return ( {item.name} ); } } const styles = StyleSheet.create({ container: { flex: 1, marginTop: StatusBar.currentHeight || 0, }, item: { margin: 10, padding: 20, marginVertical: 8, marginHorizontal: 16, } });
Das obige ist der detaillierte Inhalt vonWas ist die FlatList-Komponente und wie wird sie in React Native verwendet?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!