|
1 | 1 | --- |
2 | | -title: "React DOM Components" |
| 2 | +title: "React DOM 컴포넌트" |
3 | 3 | --- |
4 | 4 |
|
5 | 5 | <Intro> |
6 | 6 |
|
7 | | -React supports all of the browser built-in [HTML](https://developer.mozilla.org/en-US/docs/Web/HTML/Element) and [SVG](https://developer.mozilla.org/en-US/docs/Web/SVG/Element) components. |
| 7 | +React는 브라우저에 내장된 모든 [HTML](https://developer.mozilla.org/en-US/docs/Web/HTML/Element)과 [SVG](https://developer.mozilla.org/en-US/docs/Web/SVG/Element)를 지원합니다. |
8 | 8 |
|
9 | 9 | </Intro> |
10 | 10 |
|
11 | 11 | --- |
12 | 12 |
|
13 | | -## Common components {/*common-components*/} |
| 13 | +## 공통 컴포넌트 {/*common-components*/} |
14 | 14 |
|
15 | | -All of the built-in browser components support some props and events. |
| 15 | +브라우저에 내장된 모든 컴포넌트는 일부 props와 이벤트를 지원합니다. |
16 | 16 |
|
17 | | -* [Common components (e.g. `<div>`)](/reference/react-dom/components/common) |
| 17 | +* [공통 컴포넌트 (예: `<div>`)](/reference/react-dom/components/common) |
18 | 18 |
|
19 | | -This includes React-specific props like `ref` and `dangerouslySetInnerHTML`. |
| 19 | +`ref`와 `dangerouslySetInnerHTML`같은 React 고유의 props를 포함합니다. |
20 | 20 |
|
21 | 21 | --- |
22 | 22 |
|
23 | | -## Form components {/*form-components*/} |
| 23 | +## 폼 컴포넌트 {/*form-components*/} |
24 | 24 |
|
25 | | -These built-in browser components accept user input: |
| 25 | +다음과 같은 브라우저에 내장된 컴포넌트는 사용자 입력을 받습니다. |
26 | 26 |
|
27 | 27 | * [`<input>`](/reference/react-dom/components/input) |
28 | 28 | * [`<select>`](/reference/react-dom/components/select) |
29 | 29 | * [`<textarea>`](/reference/react-dom/components/textarea) |
30 | 30 |
|
31 | | -They are special in React because passing the `value` prop to them makes them *[controlled.](/reference/react-dom/components/input#controlling-an-input-with-a-state-variable)* |
| 31 | +`value` 프로퍼티를 전달하면 *[제어](/reference/react-dom/components/input#controlling-an-input-with-a-state-variable)* 할 수 있기 때문에 React에서 특별합니다. |
32 | 32 |
|
33 | 33 | --- |
34 | 34 |
|
35 | | -## All HTML components {/*all-html-components*/} |
| 35 | +## 모든 HTML 컴포넌트 {/*all-html-components*/} |
36 | 36 |
|
37 | | -React supports all built-in browser HTML components. This includes: |
| 37 | +React는 브라우저에 내장된 모든 HTML 컴포넌트를 지원합니다. 이는 다음과 같은 컴포넌트를 포함합니다. |
38 | 38 |
|
39 | 39 | * [`<aside>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/aside) |
40 | 40 | * [`<audio>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/audio) |
@@ -140,38 +140,38 @@ React supports all built-in browser HTML components. This includes: |
140 | 140 |
|
141 | 141 | <Note> |
142 | 142 |
|
143 | | -Similar to the [DOM standard,](https://developer.mozilla.org/en-US/docs/Web/API/Document_Object_Model) React uses a `camelCase` convention for prop names. For example, you'll write `tabIndex` instead of `tabindex`. You can convert existing HTML to JSX with an [online converter.](https://transform.tools/html-to-jsx) |
| 143 | +[DOM 표준](https://developer.mozilla.org/en-US/docs/Web/API/Document_Object_Model)과 유사하게 React는 프로퍼티에 `캐멀 케이스` 표기법을 사용합니다. 예를 들어 `tabindex` 대신 `tabIndex`로 작성합니다. [온라인 변환기](https://transform.tools/html-to-jsx)를 사용하여 기존 HTML을 JSX로 변환할 수 있습니다. |
144 | 144 |
|
145 | 145 | </Note> |
146 | 146 |
|
147 | 147 | --- |
148 | 148 |
|
149 | | -### Custom HTML elements {/*custom-html-elements*/} |
| 149 | +### 커스텀 HTML 엘리먼트 {/*custom-html-elements*/} |
150 | 150 |
|
151 | | -If you render a tag with a dash, like `<my-element>`, React will assume you want to render a [custom HTML element.](https://developer.mozilla.org/en-US/docs/Web/Web_Components/Using_custom_elements) In React, rendering custom elements works differently from rendering built-in browser tags: |
| 151 | +`<my-element>`같이 대시가 포함된 태그를 렌더링하면 React는 [커스텀 HTML 엘리먼트](https://developer.mozilla.org/en-US/docs/Web/Web_Components/Using_custom_elements)를 렌더링한다고 가정합니다. React에서 커스텀 엘리먼트를 렌더링하는 방법은 브라우저 내장 태그를 렌더링하는 방법과 다릅니다. |
152 | 152 |
|
153 | | -- All custom element props are serialized to strings and are always set using attributes. |
154 | | -- Custom elements accept `class` rather than `className`, and `for` rather than `htmlFor`. |
| 153 | +- 모든 커스텀 엘리먼트 props는 문자열로 직렬화되며 항상 어트리뷰트를 사용하여 설정됩니다. |
| 154 | +- 커스텀 엘리먼트는 `class` 대신 `className`을 사용하고 `for` 대신 `htmlFor`를 사용합니다. |
155 | 155 |
|
156 | | -If you render a built-in browser HTML element with an [`is`](https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/is) attribute, it will also be treated as a custom element. |
| 156 | +[`is`](https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/is) 어트리뷰트를 사용하여 브라우저 내장 HTML 엘리먼트를 렌더링하면 커스텀 엘리먼트로 취급됩니다. |
157 | 157 |
|
158 | 158 | <Note> |
159 | 159 |
|
160 | | -[A future version of React will include more comprehensive support for custom elements.](https://github.com/facebook/react/issues/11347#issuecomment-1122275286) |
| 160 | +[향후 React 버전에는 커스텀 엘리먼트에 대한 더 포괄적인 지원이 제공될 예정입니다.](https://github.com/facebook/react/issues/11347#issuecomment-1122275286) |
161 | 161 |
|
162 | | -You can try it by upgrading React packages to the most recent experimental version: |
| 162 | +React package를 최신 실험 버전으로 업그레이드하여 사용해 볼 수 있습니다. |
163 | 163 |
|
164 | 164 | - `react@experimental` |
165 | 165 | - `react-dom@experimental` |
166 | 166 |
|
167 | | -Experimental versions of React may contain bugs. Don't use them in production. |
| 167 | +React 실험 버전은 버그가 있을 수 있습니다. 프로덕션 환경에서 사용하지 마세요. |
168 | 168 |
|
169 | 169 | </Note> |
170 | 170 | --- |
171 | 171 |
|
172 | | -## All SVG components {/*all-svg-components*/} |
| 172 | +## 모든 SVG 컴포넌트 {/*all-svg-components*/} |
173 | 173 |
|
174 | | -React supports all built-in browser SVG components. This includes: |
| 174 | +React는 브라우저에 내장된 모든 SVG 엘리먼트를 지원합니다. 이는 다음과 같은 것을 포함합니다. |
175 | 175 |
|
176 | 176 | * [`<a>`](https://developer.mozilla.org/en-US/docs/Web/SVG/Element/a) |
177 | 177 | * [`<animate>`](https://developer.mozilla.org/en-US/docs/Web/SVG/Element/animate) |
@@ -242,20 +242,20 @@ React supports all built-in browser SVG components. This includes: |
242 | 242 |
|
243 | 243 | <Note> |
244 | 244 |
|
245 | | -Similar to the [DOM standard,](https://developer.mozilla.org/en-US/docs/Web/API/Document_Object_Model) React uses a `camelCase` convention for prop names. For example, you'll write `tabIndex` instead of `tabindex`. You can convert existing SVG to JSX with an [online converter.](https://transform.tools/) |
246 | | - |
247 | | -Namespaced attributes also have to be written without the colon: |
248 | | - |
249 | | -* `xlink:actuate` becomes `xlinkActuate`. |
250 | | -* `xlink:arcrole` becomes `xlinkArcrole`. |
251 | | -* `xlink:href` becomes `xlinkHref`. |
252 | | -* `xlink:role` becomes `xlinkRole`. |
253 | | -* `xlink:show` becomes `xlinkShow`. |
254 | | -* `xlink:title` becomes `xlinkTitle`. |
255 | | -* `xlink:type` becomes `xlinkType`. |
256 | | -* `xml:base` becomes `xmlBase`. |
257 | | -* `xml:lang` becomes `xmlLang`. |
258 | | -* `xml:space` becomes `xmlSpace`. |
259 | | -* `xmlns:xlink` becomes `xmlnsXlink`. |
| 245 | +[DOM 표준](https://developer.mozilla.org/en-US/docs/Web/API/Document_Object_Model)과 유사하게 React는 프로퍼티에 `캐멀 케이스` 표기법을 사용합니다. 예를 들어 `tabindex` 대신 `tabIndex`를 작성합니다. [온라인 변환기](https://transform.tools/)를 사용하여 기존 SVG를 JSX로 변환할 수 있습니다. |
| 246 | + |
| 247 | +네임스페이스 어트리뷰트 또한 콜론 없이 작성해야 합니다. |
| 248 | + |
| 249 | +* `xlink:actuate` 대신 `xlinkActuate` |
| 250 | +* `xlink:arcrole` 대신 `xlinkArcrole` |
| 251 | +* `xlink:href` 대신 `xlinkHref` |
| 252 | +* `xlink:role` 대신 `xlinkRole` |
| 253 | +* `xlink:show` 대신 `xlinkShow` |
| 254 | +* `xlink:title` 대신 `xlinkTitle` |
| 255 | +* `xlink:type` 대신 `xlinkType` |
| 256 | +* `xml:base` 대신 `xmlBase` |
| 257 | +* `xml:lang` 대신 `xmlLang` |
| 258 | +* `xml:space` 대신 `xmlSpace` |
| 259 | +* `xmlns:xlink` 대신 `xmlnsXlink` |
260 | 260 |
|
261 | 261 | </Note> |
0 commit comments