Как выполнить часть axios
и отправить обновленные реквизиты состояний компоненту Important
.
Когда я console.log вижу, что это состояние передается как реквизит с пустым объектом, но через долю в секундах снова состояния обновляются новым извлеченным значением, что означает, что сначала выполняется мой возврат, затем выполняется моя usEffect
axios
часть,
Как я могу убедиться, что сначала будет запущена часть axios
, затем моя вернуть часть. В первую go обновленную часть следует отправлять, а не пустую пустую часть
const initialState = {
Important: [{}],
Error: false
}
const reducer = (state, action) => {
switch (action.type) {
case "STEPFIRST":
return {
...state,
Important: action.payload,
};
case "STEPSecond":
return {
Error: true,
};
default:
return state;
}
}
const Landing = () => {
const [states, dispatch] = useReducer(reducer, initialState)
console.log(states)
useEffect(() => {
axios.get("https://example.com/")
.then(response => {
dispatch({
type: "STEPFIRST",
payload: response.data
});
})
.catch(error => {
dispatch({
type: "STEPSecond"
});
});
},[]);
const [xyz, xyzfn] = useState();
console.log(xyz)
return (
<div>
<Important states = {states} xyzfn={xyzfn} />
<Foo xyz={xyz}/>
</div>
);
};
export default Landing;