אז מה אנחנו בעצם רואים בקוד.
יש לנו את הפונקציה getDataFromServer שתפקידה לפנות לכתובת ה url ולהביא לנו מידע. את המידע אנחנו שומרים בסטייט הפנימי של הקומפוננטה.
FlatList גם מאזינה לאותו מקום ששמור בסטייט וברגע שנמלא את ה data .בנתונים הם יוצגו לנו על המסך איך שנבחר. כרגע בחרנו להציג שם ואימייל אבל יש עוד נתונים שבעצם שמורים this.state.data שלא בחרנו להציג. מוזמנים לשחק עם זה ולראות מה עוד אפשר להציג.
שמתם לב לאזהרה בתחתית? השגיאה מזהירה אותמו כי לפריטים ברשימה חסרים מפתחות.לכל פריט ברשימה צריך להיות מפתח ייחודי. מפתחות אלה מאפשרים את ה-VirtualizedList(על זה FlatList בנויה) שזה מה שעוזר לעקוב אחר פריטים ברשימה בעצם.
כדי לפתור בעיה זו נבחר פיסת נתונים ייחודית לכל פריט. במקרה הזה נבחר בכתובת הדוא"ל של המשתמש כי זה יהיה ייחודי לכל פריט.כדי לציין איזה פיסת נתונים אנו רוצים להשתמש בה כמפתח נשתמש ב-keyExtractor.
FlatList>
…
{ keyExtractor={item => item.email}
/>