API'dan veri çekiyorum ancak ilk başta veri boş geliyor daha sonra veri geliyor
React redux kullanarak api'dan veri çekiyorum ancak ilk başta veri boş geliyor daha sonra veri geliyor nasıl düzeltebilirim ?
https://www.hizliresim.com/aatjqna
//DonemSlice.js
import { createAsyncThunk, createSlice } from "@reduxjs/toolkit";
import axios from "axios";
const initialState = {
donem: [],
};
export const getDonem = createAsyncThunk("getDonem", async () => {
const { data } = await axios.get("https://localhost:44381/api/Donems/getall");
return data;
});
export const donemSlice = createSlice({
name: "donem",
initialState,
reducers: {},
extraReducers: (builder) => {
builder.addCase(getDonem.fulfilled, (state, action) => {
state.donem = action.payload;
});
},
});
export default donemSlice.reducer;
import React, { useEffect } from "react";
import { useDispatch, useSelector } from "react-redux";
import { getDonem } from "../stores/DonemSlice";
const Donem = () => {
const dispatch = useDispatch();
const { donem } = useSelector((state) => state.donem);
useEffect(() => {
dispatch(getDonem());
}, []);
console.log(donem);
return (
<div className="input">
</div>
);
};
export default Donem;
Dönen cevabına tam bakamamışım kusura bakma response'un direkt dizi olarak değilmiş.
import React, { useEffect } from "react";
import { useDispatch, useSelector } from "react-redux";
import { getDonem } from "../stores/DonemSlice";
const Donem = () => {
const dispatch = useDispatch();
const { donem } = useSelector((state) => state.donem);
useEffect(() => {
dispatch(getDonem());
}, []);
console.log(donem);
return (
<div className="input">
{donem?.data?.length > 0 ? (<div>Data var</div>) : (<div>Yükleniyor..</div>)}
</div>
);
};
export default Donem;