react props

props(변수, 함수 부모가 자식에게 넘기는것 passing하기)



Components styled 변수명 작성 시
StyledLoginDiv 이런식으로 작성하는게 좋다. 대문자로 시작해야한다.

src>pages>Homepage.js 만들자

const HomePage = () => {

//http 요청(jquery ajax, fetch, axios(다운받아야함)) , 요청은 페이지에서 해라, 컴포넌트에서 하면 안쓰면 헷갈릴 수 있다. 그리고 데이터를 자식에서 부모로 못넘긴다. props
const [borads, setBoards] = useStage([]);

// 빈배열 한번만 실행
useEffect(()=>{
//다운로드 가정
let data= [
{id1, titile:"제목1", content:"내용1"},
{id2 titile:"제목2, content:"내용2},
{id3 titile:"제목3, content:"내용3},

]
setBoards(data);

}, []); //최초한번만 실행




  return (
    <div>
      <Header/>
      <Home boards={boards}/> home에 넘어가는게 prop이다. 이것은 상태데이터여야 한다.
      <Footer/>
  );
};

export default HomePage;

그리고 src>Components>home폴더만들고>Home.js 만들자

그러면 Home.js에서 boards를 받을 수 있는데

const Home = (boards) => {  //boards로 받을 수 있다. 클래스방식으로 받으면 받는 방법이 따로있다. 여러개 넘어오면 (props)라고 적는다. 
  
//구조분할 할당
const {boards} = props; // boards를 받는다.

return (
   <div>
     <h1>홈페이지입니다.</h1>
      {boards.map((board)=>(
      <h3>
        제목: {board.title} 내용: {board.content}
      </h3>
   ))};
   </div>
  );
};
export default Home;


데이터는 페이지가 들고있다.
컴포넌트는 페이지에서 props로 변수를 받는다.
데이터를 제어하려면 데이터를 제어하는 함수를 props로 받아야한다.

문제> 
HomePage.js에서
const[number, setNumber] = useSteate(0); 에서 number를 넘기고
버튼을 만들어서 번호를 증가시켜라

'프론트엔드 > 리액트-데어프로그래밍 강좌정리' 카테고리의 다른 글

react router dom  (1) 2021.07.23
react styled component props 패싱  (0) 2021.07.22
react componets styled  (0) 2021.07.22
react useRef  (0) 2021.07.22
react useMemo  (0) 2021.07.22

댓글()
구독