You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: src/content/learn/index.md
+18-18
Original file line number
Diff line number
Diff line change
@@ -79,7 +79,7 @@ export default function MyApp() {
79
79
80
80
Сінтаксіс разметкі, які вы бачылі вышэй, называецца *JSX*. Ён неабавязковы, але большасць праектаў React выкарыстоўваюць JSX для зручнасці. Усе [інструменты, якія мы рэкамендуем для лакальнай распрацоўкі](/learn/installation) падтрымліваюць JSX.
81
81
82
-
JSX больш строгі, чым HTML. Вы павінны закрываць такія тэгі, як `<br />`. Таксама ваш кампанент не можа вяртаць некалькі тэгаў JSX. Іх трэба змясціць у агульны бацкоўскі элемент, напрыклад `<div>...</div>` або пустую абгортку `<>...</>`:
82
+
JSX больш строгі, чым HTML. Вы павінны закрываць такія тэгі, як `<br />`. Таксама ваш кампанент не можа вяртаць некалькі тэгаў JSX. Іх трэба змясціць у агульны бацькоўскі элемент, напрыклад `<div>...</div>` або пустую абгортку `<>...</>`:
83
83
84
84
```js {3,6}
85
85
functionAboutPage() {
@@ -115,7 +115,7 @@ React не вызначае, як дадаваць файлы CSS. У самым
115
115
116
116
## Адлюстраванне даных {/*displaying-data*/}
117
117
118
-
JSX дазваляе дадаваць разметку ў JavaScript. Фігурныя дужкі дазваляюць вам "вярнуцца" ў JavaScript, каб вы маглі ўставіць некаторую пераменную з вашага кода і паказаць яе карыстальніку. Напрыклад, код ніжэй пакажа `user.name`:
118
+
JSX дазваляе дадаваць разметку ў JavaScript. Фігурныя дужкі дазваляюць вам «вярнуцца» ў JavaScript, каб вы маглі ўставіць некаторую пераменную з вашага кода і паказаць яе карыстальніку. Напрыклад, код ніжэй пакажа `user.name`:
119
119
120
120
```js {3}
121
121
return (
@@ -197,7 +197,7 @@ return (
197
197
);
198
198
```
199
199
200
-
Калі вы аддаеце перавагу больш кампактнаму коду, вы можаце выкарыстоўваць [умоўны аператар `?`.](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Conditional_Operator) У адрозненне ад `if` яго можна выкарыстоўваць у JSX:
200
+
Калі вы аддаяце перавагу больш кампактнаму коду, вы можаце выкарыстоўваць [умоўны аператар `?`.](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Conditional_Operator) У адрозненне ад `if` яго можна выкарыстоўваць у JSX:
201
201
202
202
```js
203
203
<div>
@@ -221,7 +221,7 @@ return (
221
221
222
222
## Рэндэрынг спісаў {/*rendering-lists*/}
223
223
224
-
Для адлюстравання спісаў кампанентаў вам трэба будзе выкарыстоўваць такія магчымасці JavaScript, як [цыкл `for`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/for) і [функцыя масіва`map()`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/map).
224
+
Для адлюстравання спісаў кампанентаў вам трэба будзе выкарыстоўваць такія магчымасці JavaScript, як [цыкл `for`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/for) і [функцыя масіву`map()`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/map).
225
225
226
226
227
227
Напрыклад, уявім, што ў вас ёсць масіў прадуктаў:
@@ -281,7 +281,7 @@ export default function ShoppingList() {
281
281
282
282
## Апрацоўка падзей {/*responding-to-events*/}
283
283
284
-
Вы можаце рэагаваць на падзеі, аб'яўляючы унутры вашых кампанентаў функцыі *апрацоўшчыкаў падзей*:
284
+
Вы можаце рэагаваць на падзеі, аб'яўляючы ўнутры вашых кампанентаў функцыі *апрацоўшчыкаў падзей*:
285
285
286
286
```js {2-4,7}
287
287
functionMyButton() {
@@ -301,7 +301,7 @@ function MyButton() {
301
301
302
302
## Абнаўленне экрана {/*updating-the-screen*/}
303
303
304
-
Часта вам можа спатрэбіцца, каб ваш кампанент "запомніў" некаторую інфармацыю і адлюстраваў яе. Напрыклад, вы хочаце падлічыць, колькі разоў націскалася кнопка. Для гэтага дадайце *стан* да вашага кампанента.
304
+
Часта вам можа спатрэбіцца, каб ваш кампанент «запомніў» некаторую інфармацыю і адлюстраваў яе. Напрыклад, вы хочаце падлічыць, колькі разоў націскалася кнопка. Для гэтага дадайце *стан* да вашага кампанента.
305
305
306
306
Спачатку імпартуйце [`useState`](/reference/react/useState) з React:
307
307
@@ -337,7 +337,7 @@ function MyButton() {
337
337
}
338
338
```
339
339
340
-
React зноў выкліча функцыю вашага кампанента. На гэты раз `count` будзе раўны`1`, затым `2`, і гэтак далей.
340
+
React зноў выкліча функцыю вашага кампанента. На гэты раз `count` будзе роўны`1`, затым `2`, і гэтак далей.
341
341
342
342
Калі вы рэндэрыце адзін і той жа кампанент некалькі разоў, то ў кожнага з іх будзе свой стан. Паспрабуйце націснуць кожную кнопку паасобку:
343
343
@@ -380,13 +380,13 @@ button {
380
380
381
381
</Sandpack>
382
382
383
-
Звярніце ўвагу на тое, як кожная кнопка "запамінае" свой уласны стан `count` і не ўплывае на іншыя кнопкі.
383
+
Звярніце ўвагу на тое, як кожная кнопка «запамінае» свой уласны стан `count` і не ўплывае на іншыя кнопкі.
384
384
385
385
## Выкарыстанне хукаў {/*using-hooks*/}
386
386
387
-
Функцыі, чыі назвы пачынаюцца з `use`, называюцца *хукамі*. `useState` — гэта ўбудаваны хук у React. У [даведцы па API](/reference/react) можна знайсці іншыя ўбудаваныя хукі. Таксама, вы можаце пісаць свае ўласныя хукі, сумяшчаючы іх з ужо існуючымі.
387
+
Функцыі, чые назвы пачынаюцца з `use`, называюцца *хукамі*. `useState` — гэта ўбудаваны хук у React. У [даведцы па API](/reference/react) можна знайсці іншыя ўбудаваныя хукі. Таксама, вы можаце пісаць свае ўласныя хукі, сумяшчаючы іх з ужо існуючымі.
388
388
389
-
Хукі маюць больш абмежаванняў, чым іншыя функцый. Хукі могуць выклікацца толькі *у пачатку* вашых кампанентаў (або іншых хукаў). Калі вам патрэбен`useState` ва ўмове ці цыкле, стварыце новы кампанент і выкарыстоўвайце яго там.
389
+
Хукі маюць больш абмежаванняў, чым іншыя функцый. Хукі могуць выклікацца толькі *у пачатку* вашых кампанентаў (або іншых хукаў). Калі вам патрэбны`useState` ва ўмове ці цыкле, стварыце новы кампанент і выкарыстоўвайце яго там.
390
390
391
391
## Абмен данымі паміж кампанентамі {/*sharing-data-between-components*/}
392
392
@@ -396,7 +396,7 @@ button {
396
396
397
397
<Diagram name="sharing_data_child" height={367} width={407} alt="Дыяграма, якая паказвае дрэва з трох кампанентаў, адзін бацькоўскі з надпісам MyApp і два даччыныя з надпісам MyButton. Абодва кампаненты MyButton утрымліваюць лік з нулявым значэннем.">
398
398
399
-
Першапачаткова у кожнага `MyButton` стан `count` роўны `0`
399
+
Першапачаткова ў кожнага `MyButton` стан `count` роўны `0`
400
400
401
401
</Diagram>
402
402
@@ -408,9 +408,9 @@ button {
408
408
409
409
</DiagramGroup>
410
410
411
-
Аднак, часта ўзнікаюць сітуацыі, калі вам трэба, каб кампаненты "мелі агульныя даныя і заўсёды абнаўляліся разам".
411
+
Аднак, часта ўзнікаюць сітуацыі, калі вам трэба, каб кампаненты «мелі агульныя даныя і заўсёды абнаўляліся разам».
412
412
413
-
Для таго, каб абодва кампаненты `MyButton` адлюстроўвалі аднолькавы `count` і абнаўляліся разам, вам трэба перамясціць стан ад асобных кнопак "уверх" да бліжэйшага кампанента, які змяшчае гэтыя кампаненты.
413
+
Для таго, каб абодва кампаненты `MyButton` адлюстроўвалі аднолькавы `count` і абнаўляліся разам, вам трэба перамясціць стан ад асобных кнопак «уверх» да бліжэйшага кампанента, які змяшчае гэтыя кампаненты.
414
414
415
415
У гэтым прыкладзе гэта кампанент `MyApp`:
416
416
@@ -432,7 +432,7 @@ button {
432
432
433
433
Цяпер, калі вы націснеце адну з кнопак, `count` у `MyApp` зменіцца, што зменіць значэнні лічыльнікаў у абодвух кампанентах `MyButton`. Вось як гэта можна запісаць у кодзе.
434
434
435
-
Спачатку *перамясціце уверх стан* з `MyButton` у `MyApp`:
435
+
Спачатку *перамясціце ўверх стан* з `MyButton` у `MyApp`:
436
436
437
437
```js {2-6,18}
438
438
exportdefaultfunctionMyApp() {
@@ -477,9 +477,9 @@ export default function MyApp() {
477
477
}
478
478
```
479
479
480
-
Інфармацыя, якую вы перадаеце такім чынам, называецца _пропсамі_ (props). Цяпер кампанент `MyApp` мае стан `count` і апрацоўшчык падзеі `handleClick` і *перадае абодва ў якасці пропсаў* кожнай кнопцы.
480
+
Інфармацыя, якую вы перадаяце такім чынам, называецца _ўласцівасцямі_ або _пропсамі_ (props). Цяпер кампанент `MyApp` мае стан `count` і апрацоўшчык падзеі `handleClick` і *перадае абодва ў якасці ўласцівасцей* кожнай кнопцы.
481
481
482
-
Нарэшце, змяніце кампанент `MyButton` так, каб ён *счытваў* пропсы, якія яму перадалі з яго бацькоўскага кампанента:
482
+
Нарэшце, змяніце кампанент `MyButton` так, каб ён *счытваў* уласцівасці, якія яму перадалі з яго бацькоўскага кампанента:
483
483
484
484
```js {1,3}
485
485
functionMyButton({ count, onClick }) {
@@ -491,7 +491,7 @@ function MyButton({ count, onClick }) {
491
491
}
492
492
```
493
493
494
-
Калі вы націскаеце кнопку, спрацоўвае апрацоўшчык `onClick`. У кожнай кнопцы ў якасці значэння пропса`onClick` зададзена функцыя `handleClick` з кампанента `MyApp`, там выконваецца код гэтай функцыі. Гэты код выклікае `setCount(count +1)`, што павялічваюе пераменную стану `count`. Новае значэнне `count` перадаецца ў якасці пропса кожнай кнопца, такім чынам усе кнопкі будуць паказваць гэтае новае значэнне. Гэта называецца "падніманнем стану ўверх". Паднімаючы стан уверх, вы робіце яго агульным для ўсіх кампанентаў.
494
+
Калі вы націскаеце кнопку, спрацоўвае апрацоўшчык `onClick`. У кожнай кнопцы ў якасці значэння ўласцівасці`onClick` зададзена функцыя `handleClick` з кампанента `MyApp`, там выконваецца код гэтай функцыі. Гэты код выклікае `setCount(count +1)`, што павялічвае пераменную стану `count`. Новае значэнне `count` перадаецца ў якасці ўласцівасці кожнай кнопцы, такім чынам усе кнопкі будуць паказваць гэтае новае значэнне. Гэта называецца «падніманнем стану ўверх». Паднімаючы стан уверх, вы робіце яго агульным для ўсіх кампанентаў.
495
495
496
496
<Sandpack>
497
497
@@ -536,4 +536,4 @@ button {
536
536
537
537
Цяпер вы ведаеце асновы таго, як пісаць код на React!
538
538
539
-
Азнаёмцеся з [увядзеннем](/learn/tutorial-tic-tac-toe), каб прымяніць на практыцы атрыманыя веды і стварыць сваю першую міні-праграму на React.
539
+
Азнаёмцеся з [уводзінамі](/learn/tutorial-tic-tac-toe), каб прымяніць на практыцы атрыманыя веды і стварыць сваю першую міні-праграму на React.
0 commit comments