【发布时间】:2022-11-24 17:11:29
【问题描述】:
我正在尝试为投资组合制作电影应用程序,我有一个带有一些数据的 api,我正在尝试使用 useEffect 获取它然后设置状态,我还使用 useContext 挂钩将数据传递给子道具但数据为空.
This is App.js
import "./App.css";
import { useEffect, useState, createContext } from "react";
import Axios from "axios";
import { Main } from "./components/Main/Main";
export const AppContext = createContext();
function App() {
const [data, setData] = useState([]);
useEffect(() => {
Axios.get("http://www.omdbapi.com/?s=star wars&apikey=459f1ce1").then((res) => {
setData(res.data.Search);
})
}, []);
return (
<div className="App">
<AppContext.Provider value={data}>
<Main />
</AppContext.Provider>
</div>
);
}
export default App;
This is Main.js
import React from "react";
import { useContext } from "react";
import { AppContext } from "../../App";
import "./Main.css";
export const Main = () => {
const { data } = useContext(AppContext);
console.log(data)
return <div>
</div>;
};
export default Main;
【问题讨论】:
标签: javascript reactjs axios