React_Hooks useContext

React_Hooks useContext

useContext传值,可跨组件传值 夫->孙

1.创建两个组件ReactHooksUseContextF(父组件),ReactHooksUseContextC(子组件)

2.ReactHooksUseContextF(父组件)父组件使用createContext创建context

import React,{
    
    useState,createContext} from 'react'//1导入createContext
import ReactHooksUseContextC from './ReactHooksUseContextC'//2.导入子组件
export const CountContext = createContext()//3.导出CountContext
const ReactHooksUseContextF = () => {
    
    
    const [count,setCount]=useState(0)
    return (
        <div>
            <button onClick={
    
    ()=>setCount(count+1)}>Click Me</button>
            <p>You Clicked {
    
    count} Times</p>
            <CountContext.Provider value={
    
    count}>
                {
    
    /* 4.定义provider,放入子组件 value传值 */}
                <ReactHooksUseContextC/>
            </CountContext.Provider>
        </div>
    )
}

export default ReactHooksUseContextF

3.ReactHooksUseContextC(子组件)子组件使用useContext获取context

import React,{
    
    useContext} from 'react'//5。导入useContext
import {
    
    CountContext} from './ReactHooksUseContextF'//6.导入父组件CountContext
const ReactHooksUseContextC = () => {
    
    
    const context = useContext(CountContext)//7。使用CountContext
    return (
        <div>
            <h3>{
    
    context}</h3>
        </div>
    )
}

export default ReactHooksUseContextC

猜你喜欢

转载自blog.csdn.net/qq_22167557/article/details/121393115