본문 바로가기
React

Context API

by 루에 2021. 11. 3.
반응형

props문법을 사용하지 않고 하위 컴포넌트와 같은 값을 공유하는 방법

 

import { useContext } from 'react';

let stockContext = React.createContext();   // 범위 생성 문법

<div className="container">
      // 위에 context로 선언한 변수를 이용하여 아래처럼 작성한다. value라는 이름은 고정값이다.
      // 이렇게 작성하고 나면 해당 블록 안에서는 stock을 공통으로 공유한다.
	<stockContext.Provider value={stock}>
	<div className="row">
	{
  		shoes.map((data, index) => {
  			return <ShoesInfo key={index} data={data} history={useHistory()}/>
  		})
  	}
	</div>
    </stockContext.Provider>
</div>

function ShoesInfo(props) {
	// useContext라는 훅을 이용하여 stockContext를 변수에 담았다. 이제 사용 가능하다.
	let stock = useContext(stockContext);

	return (
    	<>
    	<div className="col-md-4">
        <p>{ stock }</p>
        </>
	)
}

 

반응형

댓글