Heim >Web-Frontend >js-Tutorial >Was ist die FlatList-Komponente und wie wird sie in React Native verwendet?
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} />FlatList wird über die VirtualizedList-Komponente implementiert, die für die Anzeige einer begrenzten Anzahl von Elementen verantwortlich ist, die in den aktuellen Ansichtsbereich des mobilen Bildschirms passen. Die restlichen Daten werden gerendert, während der Benutzer scrollt. Zum Erstellen einer FlatList können grundlegende Eigenschaften wie data und renderItem verwendet werden. Um FlatList zu verwenden, müssen Sie es wie unten gezeigt aus React-Native importieren
Array mit den anzuzeigenden Daten.
renderItem({ item, index, seperators }); | |
---|---|
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. |
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(). | 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: [] }; | 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.
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>
Dies ist der vollständige Code zum Implementieren von FlatList. keyExtractor={item => item.name}
Ausgabe Beispiel 2: Elemente in FlatList horizontal anzeigenUm FlatList-Elemente horizontal anzuzeigen, fügen Sie einfach props Horizontal={true} zu Ihrer FlatList-Komponente hinzu.
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 (Ausgabe);}; 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!