index.tsx 1.1 KB

123456789101112131415161718192021222324252627282930313233343536
  1. import React, { useEffect, useState } from 'react';
  2. import { FlatList, View, Text } from 'react-native';
  3. import HorizontalSelect from '../Components/HorizontalSelect';
  4. import { Header, PageWrapper } from '../../../../components';
  5. import { getMastersByType, Master, TypeData } from '../../../../database/unMastersService';
  6. const UNMastersScreen = () => {
  7. const [selectedType, setSelectedType] = useState<TypeData | null>(null);
  8. const [masters, setMasters] = useState<Master[] | null>([]);
  9. useEffect(() => {
  10. const data = getMastersByType(selectedType?.type || 1);
  11. setMasters(data);
  12. }, [selectedType]);
  13. return (
  14. <PageWrapper>
  15. <Header label={'UN Masters'} />
  16. <HorizontalSelect selectedType={(type) => setSelectedType(type)} />
  17. <FlatList
  18. maxToRenderPerBatch={20}
  19. data={masters}
  20. renderItem={({ item }) => (
  21. <View style={{ borderStyle: 'solid', borderWidth: 1, borderColor: 'red' }}>
  22. <Text>{item.age}</Text>
  23. </View>
  24. )}
  25. />
  26. </PageWrapper>
  27. );
  28. };
  29. export default UNMastersScreen;