contexts.js
import { createContext, useState } from "react";const MyContext = createContext();const MyContextProvider = ({ children }) => {const [value, setValue] = useState(0);const setNewValue = (newValue) => {setValue(newValue);};return (<MyContext.Provider value={{ value, setNewValue }}>{children}</MyContext.Provider>);
};export { MyContext, MyContextProvider };
根组件
import React from "react";
import { MyContextProvider } from "./contexts";
import Son from "./pages/Son";function App() {return (<div className="App"><MyContextProvider><Son /></MyContextProvider></div>);
}export default App;
父组件
import React from "react";
import Sun from './Sun'function Son() {return (<div><Sun/></div>);
}export default Son;
子组件
import React,{useContext} from "react";
import {MyContext} from '../contexts'function Sun() {const {value,setNewValue} = useContext(MyContext)return (<div><button onClick={()=>{setNewValue(value + 1)}}>{value}</button></div>);
}export default Sun;
注:本人前端小白 ,如有不对的地方还请多多指教