Search

Fragment

React에서 컴포넌트가 여러 엘리먼트를 반환하기 위해서는 하나의 노드로 묶어줘야 합니다. 이때 별도의 노드를 추가하지 않고 하는 방법이 Fragment입니다.
<React.Fragement> <ChildA /> <ChildB /> <ChildC /> </React.Fragment>
JavaScript
복사

사용 이유

<table> <tr> <Columns /> </tr> </table>
JavaScript
복사
const Columns = () => { return ( <div> <td>1</td> <td>3</td> <td>3</td> </div> ) }
JavaScript
복사
위와 같은 코드가 있다고 한다면 Columns 컴포넌트는 정상적으로 동작하지 않습니다. td가 바로 자식으로 나오지 않았기 때문입니다. 이러한 경우 Fragments를 사용해서 문제를 해결할 수 있습니다.
const Columns = () => { return ( <React.Fragement> <td>1</td> <td>3</td> <td>3</td> </React.Fragement> ) }
JavaScript
복사

단축 문법

<></>를 사용한다면 더 짧은 문법을 사용할 수 있습니다.

key가 있는 Fragements

단 Fragments에 key가 있다면 문법으로 명시적으로 선언해야 합니다.