쭈꾸미
코드짜는 쭈꾸미
쭈꾸미
전체 방문자
오늘
어제
  • 분류 전체보기 (122)
    • Journal (54)
      • Today I Learned (44)
      • 후기&회고 (4)
      • 개인 프로젝트 (4)
      • 독서일기 (2)
    • HTML, CSS (5)
    • Javascript (32)
    • Typescript (2)
    • Git, Github (4)
    • Algorithm (1)
    • React, Next.js (14)
    • API, Database (6)
      • API (0)
      • Database (1)
      • GraphQL (2)
      • Rest-API (1)
    • React-Native (1)
    • ETC (2)
    • OS (1)
      • 우분투 Ubuntu (1)

인기 글

티스토리

hELLO · Designed By 정상우.
쭈꾸미

코드짜는 쭈꾸미

[React] 리액트의 핵심 2, Props
React, Next.js

[React] 리액트의 핵심 2, Props

2022. 1. 20. 19:31

Props란?


React의 컴포넌트간에 변수, 함수 등의 정보를 물려줄 수 있는 방법이다.

 

import BoardWriteUI from './BoardWrite.presenter'

export default function BoardWrite(){
    const [writer, setWriter] = useState()

    const handleChangeWriter = (event) -> {
        const writer = event.target.value
        setWriter(writer)
    }

    return(
        <BoardWriteUI handleChangeWriter={handleChangeWriter}>
    )
}

BoardWriteUI 라는 컴포넌트를 import 하면서, 자식 컴포넌트에 전달할 props value를 지정해서 넘겨줄 수 있다.

자식 컴포넌트에서는 아래와 같은 방식으로 props에 저장된 함수를 넘겨받아 쓸 수 있다.

props = { hamdleChagngeWriter: hamdleChagngeWriter }
// 이런 객체의 형태로 함수가 전달된다.
export default function BoardWriteUI(props){
    return(
        <Wrapper>
            <Writer type="text"
            Placeholder="이름을 입력해주세요."
            onChange={props.onChangeWriter}
            >
        </Wrapper>
    )
}
// 자식 컴포넌트에서는 이런 식으로 받아올 수 있다.

 

주의!
리액트는 데이터의 흐름이 단방향으로 이루어지기 때문에 부모 > 자식 방향으로만 Props를 전달할 수 있다. 그 반대는 불가능하다.

 

Emotion에서는


Emotion에서 Props를 불러오려면, props를 입력할 공간이 없으므로 해당 위치에 화살표 함수를 별도 선언 해주어야 한다. 하단의 코드를 참고하자.

 

 

props를 잘 활용하면 이런식으로 정보를 넘기고 또 넘기는 것도 가능하다.

 

 

'React, Next.js' 카테고리의 다른 글

[React] 자주 쓰는 React 기반 라이브러리, 프레임워크 모음  (0) 2022.02.05
[React/Typescript] Eslint / prettier 설치 및 기본 세팅  (0) 2022.01.24
[React] 리액트의 핵심, State (with useState)  (0) 2022.01.20
[React] 컴포넌트 디자인 패턴 - container / presenter 패턴  (0) 2022.01.20
[Next.js] 정적 라우팅과 동적 라우팅 | Static-Routing and Dynamic-Routing  (0) 2022.01.18
    'React, Next.js' 카테고리의 다른 글
    • [React] 자주 쓰는 React 기반 라이브러리, 프레임워크 모음
    • [React/Typescript] Eslint / prettier 설치 및 기본 세팅
    • [React] 리액트의 핵심, State (with useState)
    • [React] 컴포넌트 디자인 패턴 - container / presenter 패턴
    쭈꾸미
    쭈꾸미
    느리지만 확실하게 / 웹 프론트엔드 개발자 TIL : https://jooeun-k.github.io/TIL/

    티스토리툴바