일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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
- react hook
- Javascript
- codingtest
- React 고급안내서
- notFound()
- Nextjs React 18
- background tab
- background setInterval
- getUTCDate
- context
- hook
- React 18 Nextjs
- react
- next13 head
- CSS
- React18
- Render Props
- React 고급 안내서
- Next13
- background: url
- React 공식문서
- React API 참고서
- background setttimeout
- Nextjs
- 고급안내서
- Programmers
- react-helmet
- React 18
- RTK Query
- Babel
Archives
- Today
- Total
akjfal
웹 컴포넌트 본문
React와 웹 컴포넌트는 해결하려는 문제가 서로 다릅니다. 웹 컴포넌트는 재사용할 수 있는 컴포넌트를 목적으로하고, React는 데이터와 DOM을 동기화하는 선언적 라이브러리를 목적으로 합니다.
React에서 웹 컴포넌트 사용하기
class HelloMessage extends React.Component {
render(){
return <div>Hello <x-search>{this.props.name}>/x-search>!</div>
}
}
웹 컴포넌트에는 강제성있는 API들이 있습니다. 예를 들어 video는 play()나 pause()를 열어놓고 있습니다. Ref를 사용해야만 해당 API에 접근할 수 있습니다. 또한 웹 컴포넌트에서 나온 이벤트들은 React렌더링 트리에 정상 작동하지 않을 수 있어 이를 다루기 위한 핸들러를 React 컴포넌트 내에 각각 만들어야 합니다.
웹 컴포넌트는 className이 아닌 class를 사용합니다.
babel로 클래스를 변환하려면 코드가 작동하지 않을 수 있습니다. 그럴 땐 custom-elements-es5-adapter를 추가해야 합니다.
'(구)React 공식문서 > 고급 안내서' 카테고리의 다른 글
Strict 모드 (0) | 2023.02.22 |
---|---|
Render Props (0) | 2023.02.22 |
Ref와 DOM (0) | 2023.02.22 |
재조정(Reconciliation) (0) | 2023.02.22 |
JSX 없이 사용하는 React (0) | 2023.02.22 |
Comments