` to your markup, you can write `<>` and `>` instead:
+Калі вы не хочаце дадаваць яшчэ адзін `
` у сваю разметку, вы можаце выкарыстоўваць пару тэгаў `<>` і `>` замест:
```js {1,11}
<>
-
Hedy Lamarr's Todos
+
Спіс задач Хедзі Ламар

` to your markup, you can write `<>` and
>
```
-This empty tag is called a *[Fragment.](/reference/react/Fragment)* Fragments let you group things without leaving any trace in the browser HTML tree.
+Гэты пусты тэг называецца *[Фрагмент.](/reference/react/Fragment)* Фрагменты дазваляюць вам групаваць рэчы, не пакідаючы слядоў у HTML дрэвы ў браўзеры.
-#### Why do multiple JSX tags need to be wrapped? {/*why-do-multiple-jsx-tags-need-to-be-wrapped*/}
+#### Чаму некалькі JSX тэгаў павінны быць абгорнутыя ў адзін? {/*why-do-multiple-jsx-tags-need-to-be-wrapped*/}
-JSX looks like HTML, but under the hood it is transformed into plain JavaScript objects. You can't return two objects from a function without wrapping them into an array. This explains why you also can't return two JSX tags without wrapping them into another tag or a Fragment.
+JSX выглядае як HTML, але «пад капотам» трансфармуецца ў звычайныя JavaScript аб’екты. Як вы не можаце вярнуць з функцыі два аб’екты, не абгарнуўшы іх у масіў, такім жа чынам нельга вярнуць два JSX тэгі, не абгарнуўшы іх у іншы тэг ці Фрагмент.
-### 2. Close all the tags {/*2-close-all-the-tags*/}
+### 2. Закрывайце ўсе свае тэгі {/*2-close-all-the-tags*/}
-JSX requires tags to be explicitly closed: self-closing tags like `
![]()
` must become `
![]()
`, and wrapping tags like `
oranges` must be written as `oranges`.
+JSX патрабуе, каб усе тэгі былі закрытыя: няпарныя тэгі, такія як `
![]()
`, ператвараюцца ў `
![]()
`, і абгортачныя тэгі, такія як `
апельсіны`, павінны быць абавязкова закрытымі: `апельсіны`.
-This is how Hedy Lamarr's image and list items look closed:
+Тэгі фота Хедзі Ламар і элементаў спіса павінны закрывацца вось такім чынам:
```js {2-6,8-10}
<>
@@ -193,18 +193,18 @@ This is how Hedy Lamarr's image and list items look closed:
class="photo"
/>
- - Invent new traffic lights
- - Rehearse a movie scene
- - Improve the spectrum technology
+ - Вынайсці новыя святлафоры
+ - Адрэпетаваць сцэну з фільма
+ - Палепшыць тэхналогію спектра
>
```
-### 3. camelCase
all most of the things! {/*3-camelcase-salls-most-of-the-things*/}
+### 3. camelCase для
ўсяго амаль ўсяго! {/*3-camelcase-salls-most-of-the-things*/}
-JSX turns into JavaScript and attributes written in JSX become keys of JavaScript objects. In your own components, you will often want to read those attributes into variables. But JavaScript has limitations on variable names. For example, their names can't contain dashes or be reserved words like `class`.
+JSX ператвараецца ў JavaScript і атрыбуты, напісаныя ў JSX, ператвараюцца ў ключы JavaScript аб’ектаў. Ва ўласных кампанентах у вас часта можа ўзнікаць патрэбнасць у чытанні гэтых атрыбутаў з пераменных. Але JavaScript мае абмежаванні ў назвах пераменных. Напрыклад, назвы не могуць уключаць злучнікі ці зарэзерваваныя словы, такія як `class`.
-This is why, in React, many HTML and SVG attributes are written in camelCase. For example, instead of `stroke-width` you use `strokeWidth`. Since `class` is a reserved word, in React you write `className` instead, named after the [corresponding DOM property](https://developer.mozilla.org/en-US/docs/Web/API/Element/className):
+Таму ў React шмат якія HTML і SVG атрыбуты напісаныя ў camelCase. Напрыклад, замест `stroke-width` трэба выкарыстоўваць `strokeWidth`. Так як `class` — зарэзерваванае слова, у React трэба пісаць `className` замест яго, што суадносіцца з [адпаведнай уласцівасцю DOM](https://developer.mozilla.org/en-US/docs/Web/API/Element/className):
```js {4}
![]()
```
-You can [find all these attributes in the list of DOM component props.](/reference/react-dom/components/common) If you get one wrong, don't worry—React will print a message with a possible correction to the [browser console.](https://developer.mozilla.org/docs/Tools/Browser_Console)
+Вы можаце [знайсці ўсе гэтыя атрыбуты ў спісе пропсаў DOM кампанентаў](/reference/react-dom/components/common). Калі вы штосьці напісалі не так, не хвалюйцеся, React паведаміць вам пра гэта і прапануе магчыма правільны варыянт у [кансолі вашага браўзера](https://developer.mozilla.org/docs/Tools/Browser_Console).
-For historical reasons, [`aria-*`](https://developer.mozilla.org/docs/Web/Accessibility/ARIA) and [`data-*`](https://developer.mozilla.org/docs/Learn/HTML/Howto/Use_data_attributes) attributes are written as in HTML with dashes.
+Так гістарычна склалася, што атрыбуты [`aria-*`](https://developer.mozilla.org/docs/Web/Accessibility/ARIA) і [`data-*`](https://developer.mozilla.org/docs/Learn/HTML/Howto/Use_data_attributes) напісаныя праз злучнікі, як і ў HTML.
-### Pro-tip: Use a JSX Converter {/*pro-tip-use-a-jsx-converter*/}
+### Падказка: карыстайцеся JSX канвертарам {/*pro-tip-use-a-jsx-converter*/}
-Converting all these attributes in existing markup can be tedious! We recommend using a [converter](https://transform.tools/html-to-jsx) to translate your existing HTML and SVG to JSX. Converters are very useful in practice, but it's still worth understanding what is going on so that you can comfortably write JSX on your own.
+Перапісваць усе гэтыя атрыбуты ва ўжо існуючай разметцы можа быць стомным! Мы раім карыстацца [канвертарам](https://transform.tools/html-to-jsx) каб перакласці вашыя існуючыя HTML і SVG у JSX. Канвертары вельмі карысныя на практыцы, але ўсё яшчэ варта разумець, што адбываецца, каб пісаць JSX было камфортна.
-Here is your final result:
+Вось так мае выглядаць канчатковы вынік:
@@ -234,16 +234,16 @@ Here is your final result:
export default function TodoList() {
return (
<>
- Hedy Lamarr's Todos
+ Спіс задач Хедзі Ламар
- - Invent new traffic lights
- - Rehearse a movie scene
- - Improve the spectrum technology
+ - Вынайсці новыя святлафоры
+ - Адрэпетаваць сцэну з фільма
+ - Палепшыць тэхналогію спектра
>
);
@@ -258,11 +258,11 @@ img { height: 90px }
-Now you know why JSX exists and how to use it in components:
+Цяпер вы ведаеце чаму JSX існуе і як выкарыстоўваць яго ў кампанентах:
-* React components group rendering logic together with markup because they are related.
-* JSX is similar to HTML, with a few differences. You can use a [converter](https://transform.tools/html-to-jsx) if you need to.
-* Error messages will often point you in the right direction to fixing your markup.
+* Кампаненты React групуюць логіку рэндэру разам з разметкай таму што яны звязаныя паміж сабой.
+* JSX падобны да HTML, але мае адрозненні. Вы можаце выкарыстоўваць [канвертар](https://transform.tools/html-to-jsx), калі тое патрэбна.
+* Паведамленні пра памылкі часта будуць падказваць вам кірунак хутчэйшага вырашэння праблемы.
@@ -270,9 +270,9 @@ Now you know why JSX exists and how to use it in components:
-#### Convert some HTML to JSX {/*convert-some-html-to-jsx*/}
+#### Ператварыце HTML у JSX {/*convert-some-html-to-jsx*/}
-This HTML was pasted into a component, but it's not valid JSX. Fix it:
+Дадзены HTML быў устаўлены ў кампанент, але ён не з’яўляецца правільным JSX. Выправіце гэта:
@@ -280,12 +280,12 @@ This HTML was pasted into a component, but it's not valid JSX. Fix it:
export default function Bio() {
return (
-
Welcome to my website!
+ Вітаю на сваім вэб-сайце!
- You can find my thoughts here.
+ Тут вы можаце азнаёміцца з маімі думкамі.
- And pictures of scientists!
+ Таксама тут ёсць фотаздымкі навукоўцаў!
);
}
@@ -308,7 +308,7 @@ export default function Bio() {
-Whether to do it by hand or using the converter is up to you!
+Карыстацца канвертарам ці зрабіць самастойна — ваш асабісты выбар!
@@ -319,12 +319,12 @@ export default function Bio() {
return (
-
Welcome to my website!
+ Вітаю на сваім вэб-сайце!
- You can find my thoughts here.
+ Тут вы можаце азнаёміцца з маімі думкамі.
- And pictures of scientists!
+ Таксама тут ёсць фотаздымкі навукоўцаў!
);