Wątek przeniesiony 2022-11-30 18:28 z Java przez Riddle.

Wywołanie listy obiektów z api

0

Mam taki problem jestem uczę sie react i chce wyśiwetlić listę godzin z mojego api (Java) w liscie. Na ten moment pobieram listę ale nie moge jej wyświetlić. Co mam źle?

onst [houer, setHouer] = useState('');

useEffect(() => {hours()},[])

const hours = () => {
  axios.get(`${URL_TERM}/hours`)
  .then((response) => {
    console.log(response.data)
    setHouer(response.data)}) 
  .catch(e=> {
    console.error(`Get houers error ${e}`);
  });
}
<View style={styles.container}>
  <FlatList
    numColumns={4}
    data={hours}
    keyExtractor={(item) => item.id}
    renderItem={({ item }) => (<HoursComponent {...item} />)} />
</View>

To co dostaje z api [{"idHouer": 1, "time": "09:00:00"}, {"idHouer": 2, "time": "09:30:00"}, {"idHouer": 3, "time": "10:00:00"}, {"idHouer": 4, "time": "10:30:00"}]

0

Do komponentu FlatList przekazujesz: data={hours} funkcje zamiast twojego wyniki (o ile props data w FlatLIst oczekuje listy? nie wiem, nie napisałeś co to za komponent)
zmień na data={houer} Bo to ustawiasz przez state.

1 użytkowników online, w tym zalogowanych: 0, gości: 1