FlatList ialah bekas yang boleh digunakan untuk memuatkan item senarai. Ia menawarkan sokongan pengepala dan pengaki, sokongan berbilang lajur, penatalan menegak/mendatar, pemuatan malas dan banyak lagi.
Berikut ialah beberapa ciri penting FlatList-
<FlatList data={DataContainer} renderItem={ yourenderItem} keyExtractor={item => item.id} />
import { FlatList} from "react-native";
#🎜 🎜 #
Props< /th> | #🎜# | #🎜 #
---|---|
renderItem | |
item - Ia ialah item dalam medan data yang dipaparkan dalam format senarai. | indeks - Setiap item mempunyai indeks. pemisah - ialah fungsi yang membantu dalam memaparkan prop. Fungsi yang ada ialah-#🎜🎜 ## 🎜🎜 ## 🎜🎜 r#🎜🎜 ## 🎜🎜 ## 🎜🎜 ## 🎜🎜 #List ##🎜 #Listem ##🎜 🎜🎜 #Kelas komponen, fungsi rendering atau elemen rendering yang akan dipanggil apabila senarai kosong. Komponen ini boleh membantu jika anda ingin melakukan beberapa tindakan apabila senarai kosong.
ListFooterComponent | #🎜🎜 yang akan ##🎜🎜 akan dipaparkan pada kelas yang akan #🎜🎜 bahagian bawah semua item , fungsi rendering atau elemen rendering.
ListFooterComponentStyle#🎜#Gaya yang diperlukan untuk komponen yang diperlukan ditemui dalam Selesai di sini. | |
ListHeaderComponent | #, #fungsi rendering atau rendering ##🎜 Akan diberikan di atas semua item. |
ListHeaderComponentStyle#🎜🎜🎜🎜 | ListHeaderComponentStyle#🎜🎜🎜##🎜🎜🎜🎜🎜🎜🎜🎜🎜🎜🎜🎜🎜🎜🎜🎜 ditemui di sini selesai. |
mendatar< /strong> | Jika ditetapkan kepada benar, sifat ini akan memaparkan item secara mendatar.|
Mengekstrak kunci unik untuk indeks tertentu. Kunci ini digunakan untuk caching dan juga untuk menjejaki penyusunan semula item. (item: objek, indeks: nombor) => rentetan; | |
Contoh 1: Paparkan item dalam Senarai Rata secara menegak # 🎜🎜#Contoh ini menunjukkan cara FlatList berfungsi. Untuk menggunakan FlatList, mula-mula import komponen - strong>separators.highlight(), separators.unhighlight(), separators.updateProps(). Salin selepas log masuk | Saya memerlukan FlatList bersama-sama komponen lain seperti teks, paparan, helaian gaya, dsb. Mereka diimport seperti yang ditunjukkan di atas. Selepas import selesai, saya perlu memaparkan data dalam FlatList. Data disimpan dalam this.state.data seperti yang ditunjukkan di bawah- |
Fungsi berikut bertanggungjawab untuk mendapatkan item dan memaparkan item yang sama dalam komponen teks , seperti yang ditunjukkan di bawah - 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: [] }; Salin selepas log masuk | Komponen teks dibalut di dalam komponen paparan. item.isTitle ialah pembolehubah, semak untuk benar/salah dan tetapkannya kepada huruf tebal dengan sewajarnya dan tetapkan warna. Untuk melaksanakan FlatList | Berikut ialah pelaksanaan FlatList dengan data dan sifat renderItem. < /tr>
diberi
data#🎜🎜🎜🎜🎜 atribut dan
>this.renderItem
renderItem
.
key
. Jadi kami menganggap nama itu sebagai Kunci unik dan menetapkannya kepada keyExtractor. Atas ialah kandungan terperinci Apakah komponen FlatList dan cara menggunakannya dalam React Native?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!<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 (