Skip to content

Commit 351a34a

Browse files
author
Maxim Titov
committed
use french quotes (кавычки-ёлочки) for the first level quotation
1 parent 2a98c87 commit 351a34a

File tree

1 file changed

+8
-8
lines changed

1 file changed

+8
-8
lines changed

src/content/learn/passing-props-to-a-component.md

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -192,7 +192,7 @@ function Avatar({ person, size }) {
192192
}
193193
```
194194

195-
Такой синтаксис называется ["деструктурирующим присваиванием" или "деструктуризацией"](https://developer.mozilla.org/ru/docs/Web/JavaScript/Reference/Operators/Destructuring_assignment#%D0%BF%D0%BE%D0%BB%D1%83%D1%87%D0%B5%D0%BD%D0%B8%D0%B5_%D0%BF%D0%BE%D0%BB%D0%B5%D0%B9_%D0%BE%D0%B1%D1%8A%D0%B5%D0%BA%D1%82%D0%B0-%D0%BF%D0%B0%D1%80%D0%B0%D0%BC%D0%B5%D1%82%D1%80%D0%B0_%D1%84%D1%83%D0%BD%D0%BA%D1%86%D0%B8%D0%B8) и равнозначен чтению свойств из параметра функции:
195+
Такой синтаксис называется [«деструктурирующим присваиванием» или «деструктуризацией»](https://developer.mozilla.org/ru/docs/Web/JavaScript/Reference/Operators/Destructuring_assignment#%D0%BF%D0%BE%D0%BB%D1%83%D1%87%D0%B5%D0%BD%D0%B8%D0%B5_%D0%BF%D0%BE%D0%BB%D0%B5%D0%B9_%D0%BE%D0%B1%D1%8A%D0%B5%D0%BA%D1%82%D0%B0-%D0%BF%D0%B0%D1%80%D0%B0%D0%BC%D0%B5%D1%82%D1%80%D0%B0_%D1%84%D1%83%D0%BD%D0%BA%D1%86%D0%B8%D0%B8) и равнозначен чтению свойств из параметра функции:
196196

197197
```js
198198
function Avatar(props) {
@@ -347,11 +347,11 @@ export function getImageUrl(person, size = 's') {
347347

348348
</Sandpack>
349349

350-
Попробуйте поменять `<Avatar>` внутри `<Card>` на любой текст и посмотреть как компонент `Card` оборачивает содержимое. Ему необязательно "знать" что рендерится внутри него. Вы ещё увидите множество применений этого гибкого паттерна.
350+
Попробуйте поменять `<Avatar>` внутри `<Card>` на любой текст и посмотреть как компонент `Card` оборачивает содержимое. Ему необязательно «знать» что рендерится внутри него. Вы ещё увидите множество применений этого гибкого паттерна.
351351

352-
Вы можете представить себе компонент с пропом `children` в виде "эклера", в который родительский компонент "добавляет начинку" через JSX. Вы будете часто использовать проп `children` для компонентов-обёрток: панелей, гридов и т.д.
352+
Вы можете представить себе компонент с пропом `children` в виде «эклера», в который родительский компонент «добавляет начинку» через JSX. Вы будете часто использовать проп `children` для компонентов-обёрток: панелей, гридов и т.д.
353353

354-
<Illustration src="/images/docs/illustrations/i_children-prop.png" alt='Карточка (Card) похожа на пазл со слотом для "дочерних" кусочков наподобие текста и аватара (Avatar)' />
354+
<Illustration src="/images/docs/illustrations/i_children-prop.png" alt="Карточка (Card) похожа на пазл со слотом для «дочерних» кусочков наподобие текста и аватара (Avatar)" />
355355

356356
## Как пропсы изменяются {/*how-props-change-over-time*/}
357357

@@ -409,14 +409,14 @@ export default function App() {
409409

410410
Этот пример показывает, что **компонент может получать различные значения пропсов в разные моменты времени.** Пропсы не всегда статические! В этом примере проп `time` меняется каждую секунду, а проп `color` меняется при выборе цвета в меню. Пропсы отражают данные компонента в конкретный момент, а не только в начале его существования.
411411

412-
Однако, пропсы [неизменяемы (immutable)](https://ru.wikipedia.org/wiki/%D0%9D%D0%B5%D0%B8%D0%B7%D0%BC%D0%B5%D0%BD%D1%8F%D0%B5%D0%BC%D1%8B%D0%B9_%D0%BE%D0%B1%D1%8A%D0%B5%D0%BA%D1%82) —- термин в информатике, обозначающий объект, который не может быть изменён после создания. Когда компоненту нужно поменять его пропсы (например, в результате действий пользователя или обновления данных), он должен "спросить" у родительского компонента _другие пропсы_ -— новый объект! Старые пропсы окажутся ненужными, и в итоге движок JavaScript освободит память, которую они занимали.
412+
Однако, пропсы [неизменяемы (immutable)](https://ru.wikipedia.org/wiki/%D0%9D%D0%B5%D0%B8%D0%B7%D0%BC%D0%B5%D0%BD%D1%8F%D0%B5%D0%BC%D1%8B%D0%B9_%D0%BE%D0%B1%D1%8A%D0%B5%D0%BA%D1%82) —- термин в информатике, обозначающий объект, который не может быть изменён после создания. Когда компоненту нужно поменять его пропсы (например, в результате действий пользователя или обновления данных), он должен «спросить» у родительского компонента _другие пропсы_ -— новый объект! Старые пропсы окажутся ненужными, и в итоге движок JavaScript освободит память, которую они занимали.
413413

414-
**Не пытайтесь "изменить пропсы".** Когда вам нужно реагировать на действия пользователя (например, они меняют цвет), вы должны "установить состояние", о котором вы можете узнать в статье [Состояние: память компонента.](/learn/state-a-components-memory)
414+
**Не пытайтесь «изменить пропсы».** Когда вам нужно реагировать на действия пользователя (например, они меняют цвет), вы должны «установить состояние», о котором вы можете узнать в статье [Состояние: память компонента.](/learn/state-a-components-memory)
415415

416416
<Recap>
417417

418418
* Чтобы передать пропсы, добавьте их в JSX, по аналогии с HTML-атрибутами.
419-
* Чтобы прочитать пропсы, используйте деструктурирующее присваивание `function Avatar({ person, size })`.
419+
* Чтобы прочитать пропсы, используйте деструктуризацию `function Avatar({ person, size })`.
420420
* Вы можете определить значение по умолчанию `size = 100`, в случае если проп принимает `undefined` или пропущен.
421421
* Вы можете передать все пропсы в другой компонент `<Avatar {...props} />` с помощью оператора расширения, но не злоупотребляйте этой возможностью!
422422
* Вложенный JSX, например `<Card><Avatar /></Card>`, будет передан в компонент `Card` в специальном пропе с именем `children`.
@@ -735,7 +735,7 @@ li { margin: 5px; }
735735

736736
В данном примере `Avatar` получает число `size` как проп, чтобы задать ширину и высоту элемента `<img>`. Сейчас проп `size` принимает значение `40`. Однако, если вы откроете изображение в новой вкладке, вы увидите, что оно на самом деле больше (`160` пикселей). Настоящий размер изображения определяется размером уменьшенной копии, которую вы запрашиваете.
737737

738-
Поменяйте компонент `Avatar` так, чтобы запрашивать изображения подходящего размера, исходя из значения пропа `size`. А именно, если `size` меньше `90`, передайте `'s'` ("small") вместо `'b'` ("big") в функцию `getImageUrl`. Проверьте, что ваши изменения работают, и попробуйте разные значения пропа `size`: аватары должны отображаться, а реальный размер изображения в отдельной вкладке будет отличаться.
738+
Поменяйте компонент `Avatar` так, чтобы запрашивать изображения подходящего размера, исходя из значения пропа `size`. А именно, если `size` меньше `90`, передайте `'s'` («small») вместо `'b'` («big») в функцию `getImageUrl`. Проверьте, что ваши изменения работают, и попробуйте разные значения пропа `size`: аватары должны отображаться, а реальный размер изображения в отдельной вкладке будет отличаться.
739739

740740
<Sandpack>
741741

0 commit comments

Comments
 (0)