[react] JSX 형제 요소 랜더링하기

React에서 JSX를 사용하면 컴포넌트에서 여러 요소를 렌더링할 수 있습니다. 그러나 자바스크립트의 문법적 제한으로 인해 형제 요소를 그대로 렌더링하는 것은 허용되지 않습니다. 이때 몇 가지 방법을 사용하여 형제 요소를 렌더링할 수 있습니다.

Fragments를 사용하기

Fragments를 사용하면 렌더링할 때 실제 DOM에 영향을 미치지 않고 여러 요소를 그룹화할 수 있습니다. Fragments는 아무것도 렌더링하지 않고 자식 요소들을 그룹화할 수 있는 새로운 방법으로, key 속성을 사용하여 맵핑된 데이터 렌더링도 가능합니다.

import React, { Fragment } from 'react';

const MyComponent = () => {
  return(
    <Fragment>
      <ChildComponent1 />
      <ChildComponent2 />
    </Fragment>
  );
}

배열을 사용하기

배열을 사용하여 여러 요소를 렌더링할 수 있습니다. 배열을 반환하면 React는 배열의 각 요소를 순서대로 렌더링합니다.

import React from 'react';

const MyComponent = () => {
  return [
    <ChildComponent1 key={1} />,
    <ChildComponent2 key={2} />
  ];
}

컴포넌트를 감싸기

또 다른 방법으로 여러 요소를 렌더링하는 것은 컴포넌트를 하나 더 생성하여 요소들을 감싸는 것입니다.

import React from 'react';

const MyComponent = () => {
  return(
    <div>
      <ChildComponent1 />
      <ChildComponent2 />
    </div>
  );
}

이러한 방법들을 사용하여 React에서 간단하게 형제 요소를 렌더링할 수 있습니다.

결론

React에서 형제 요소를 렌더링할 때, Fragments를 사용하거나 배열을 반환하거나 컴포넌트를 감싸는 방법을 사용할 수 있습니다. 이러한 다양한 방법을 이용하여 JSX에서 형제 요소를 렌더링할 수 있습니다.

참고 자료:

  1. React Fragments: https://reactjs.org/docs/fragments.html
  2. React Key 속성: https://reactjs.org/docs/lists-and-keys.html#keys