Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
Tags
- Client-Side Navigation
- 유령 의존성
- CPU와 GPU의 차이점
- NVM
- 광고지구
- git
- CloudFront 무효화
- JavaScript
- Mac OS NVM
- react portal
- 원티트 프리온보딩인턴십 1주차
- Til
- 원티드인턴십
- input error
- 향해99
- 식별자란
- jsEvent Loop
- 알고리즘
- Redux
- Node
- 회고록
- next/link
- NextJs
- toast err
- 원티드프리온보딩
- JS
- 인풋태그 엔터
- Passed by Value
- 프로젝트
- react
Archives
- Today
- Total
SUIN
[React] 멀티 element 생성해보기 (React.Fragment를 쓰는 이유 ) 본문
728x90
html의 여러 태그들을 react로 어떻게 표현할 수 있을까
<div id="root">
<h1>h1</h1>
<h3>h3</h3>
<h5>h5</h5>
</div>
react에서 여러 가지 children 속성을 넣어줄 수 있었다
그럼 children에 직접 객체를 주입해보면 어떨까
<script type="text/babel">
const rootElement = document.getElementById("root");
const elementReact = (
<div
children={[
React.createElement("h1", null, "h1"),
React.createElement("h3", null, "h3"),
React.createElement("h5", null, "h5")
]}
></div>
);
ReactDOM.render(elementReact, rootElement);
</script>
root로 태그를 넣어준 것과 동일하게 보이지만 코드 구조가 다르다
React에서는 하나의 태그에 children으로 여러 element를 만들어주기 때문에 하나의 요소가 감싸질 수밖에 없다
그래서 React.Fragment를 이용해서 부모로써 감싸주는 역할만 해주고 실제 html을 작성할 때는 그려지지 않는다.
React.Fragment는 빈태그 로 도 표현할 수 있다.
creactElement를 JSX로 변경해보자
const elementReact = (
<React.Fragment
children={[
React.createElement("h1", null, "h1"),
React.createElement("h3", null, "h3"),
React.createElement("h5", null, "h5")
]}
></React.Fragment>
);
//------------------------
const elementReact = (
<React.Fragment
children={[<h1>h1</h1>, <h3>h3</h3>, <h5>h5</h5>]}
></React.Fragment>
);
//------------------------
const elementReact = (
<React.Fragment>
<h1>h1</h1>
<h3>h3</h3>
<h5>h5</h5>
</React.Fragment>
);
//------------------------
const elementReact = (
<>
<h1>h1</h1>
<h3>h3</h3>
<h5>h5</h5>
</>
);
'React' 카테고리의 다른 글
[React] 조건부 랜더링 (0) | 2022.02.24 |
---|---|
[React] 타입스트립트로 스켈레톤 구현하기 (0) | 2022.02.10 |
[Raact] JSX 란 (0) | 2022.02.07 |
[React] React DOM 다루기 (JSX 없이 element 그려보기) (0) | 2022.02.07 |
React element 랜더링 자세히 알아보기 (0) | 2022.02.07 |