Skip to content

Commit

Permalink
Merge pull request #598 from evgeniyPP/russian-docs
Browse files Browse the repository at this point in the history
README v.2.4.1 Russian translation
  • Loading branch information
calebporzio committed Jun 29, 2020
2 parents addf9a6 + e26da41 commit 2cb788d
Showing 1 changed file with 58 additions and 10 deletions.
68 changes: 58 additions & 10 deletions README.ru.md
Original file line number Diff line number Diff line change
Expand Up @@ -109,12 +109,12 @@ Alpine.js можно использовать и для более серьез
| [`x-if`](#x-if) | При невыполнении переданного условия полностью удаляет элемент из DOM. Должна использоваться в теге `<template>`. |
| [`x-for`](#x-for) | Создает новые DOM узлы для каждого элемента в массиве. Должна использоваться в теге `<template>`. |
| [`x-transition`](#x-transition) | Директивы для добавления классов различным стадиям перехода (transition) элемента |
| [`x-spread`](#x-spread) | Позволяет привязать объект директивы Alpine к элементу для более удобного повторного использования |
| [`x-spread`](#x-spread) | Позволяет вам привязывать объект с директивами Alpine к элементам, улучшая переиспользуемость. |
| [`x-cloak`](#x-cloak) | Удаляется при инициализации Alpine. Полезна для скрытия DOM до инициализации. |

И 6 волшебных свойств (magic properties):
И 6 магических свойств (magic properties):

| Волшебное свойство | Описание |
| Магическое свойство | Описание |
| --- | --- |
| [`$el`](#el) | Получить DOM-узел корневого компонента. |
| [`$refs`](#refs) | Получить DOM-элементы компонента, отмеченные `x-ref`. |
Expand Down Expand Up @@ -301,6 +301,12 @@ Alpine.js можно использовать и для более серьез

Если в этом выражении меняются какие-либо данные, другие элементы, "привязанные" к этим данным, будут обновлены.

> Замечание: Вы также можете задать имя JS-функции.
**Пример:** `<button x-on:click="myFunction"></button>`

Это равноценно: `<button x-on:click="myFunction($event)"></button>`

**Модификатор `keydown`**

**Пример:** `<input type="text" x-on:keydown.escape="open = false">`
Expand Down Expand Up @@ -525,12 +531,12 @@ Alpine предлагает 6 разных transition-директив для д
---

### `x-spread`
**Example:**
**Пример:**
```html
<div x-data="dropdown">
<button x-spread="trigger">Open Dropdown</button>
<button x-spread="trigger">Открыть дропдаун</button>

<span x-spread="dialogue">Dropdown Contents</span>
<span x-spread="dialogue">Содержимое дропдауна</span>
</div>

<script>
Expand All @@ -555,11 +561,11 @@ Alpine предлагает 6 разных transition-директив для д
</script>
```

`x-spread` позволяет извлекать элементы привязок в объекты многоразового использования.
`x-spread` позволяем вам вынести привязки Alpine из элементов в переиспользуемый объект.

Ключами объекта являются директивы (любые, включая модификаторы), а значения — колбэками, которые будет оценивать Alpine.
Ключи объекта – это директивы (любые, в том числе и с модификаторами), а значения – колбэки, с которыми будет работать Alpine.

> Примечание: Единственная аномалия с x-spread — при использование с `x-for`. В это случае вы должны вернуть строку нормального выражения из колбэка. Например: `['x-for']() { return 'item in items' }`.
> Замечание: Единственная особенность при работе с x-spread – это то, как обрабатывается `x-for`. Когда директива, используемая в x-spread – это `x-for`, в колбэке необходимо возвращать выражение в виде строки. К примеру: `['x-for']() { return 'item in items' }`.
---

Expand All @@ -574,7 +580,9 @@ Alpine предлагает 6 разных transition-директив для д
</style>
```

### Magic Properties
### Магические свойства

> Не считая `$el`, магические свойства **не доступны внутри `x-data`**, так как компонент еще не инициализирован.
---

Expand All @@ -588,6 +596,12 @@ Alpine предлагает 6 разных transition-директив для д

`$el` – магическое свойство, которое используется для получения корневого компонента DOM-узла.

> Замечание: Свойство $event доступно только в DOM-выражениях.
Если вам нужен доступ к $event внутри JS-функции, вы можете передать его напрямую:

`<button x-on:click="myFunction($event)"></button>`

### `$refs`
**Пример:**
```html
Expand Down Expand Up @@ -619,6 +633,34 @@ Alpine предлагает 6 разных transition-директив для д
</div>
```

**Примечание по распространению событий (event propagation)**

Когда вам нужно перехватить событие, вызванное из узла на том же уровне вложенности, вам нужно использовать модификатор [`.window`](https://github.com/alpinejs/alpine/blob/master/README.ru.md#x-on):

**Неправильный пример:**

```html
<div x-data>
<span @custom-event="console.log($event.detail.foo)"></span>
<button @click="$dispatch('custom-event', { foo: 'bar' })">
<div>
```

> Это не будет работать, потому что, когда вызывается `custom-event`, он сразу всплывает ([event bubbling](https://en.wikipedia.org/wiki/Event_bubbling)) к родителю `div`.
**Диспатч для компонентов**

Вы также можете использовать предыдущую технику для общения компонентов друг с другом:

**Пример:**

```html
<div x-data @custom-event.window="console.log($event.detail)"></div>

<button x-data @click="$dispatch('custom-event', 'Hello World!')">
<!-- При нажатии в консоль выведется "Hello World!". -->
```

`$dispatch` – это сокращение для создания `CustomEvent` и его вызова (диспатча) с помощью `.dispatchEvent()`. Существует множество сценариев использования передачи данных между компонентами с помощью пользовательских событий. [Пройдите по этой ссылке](https://developer.mozilla.org/en-US/docs/Web/Guide/Events/Creating_and_triggering_events), чтобы узнать больше о системе, лежащей в основе `CustomEvent` в браузерах.

Любые данные, переданные как второй параметр в `$dispatch('some-event', { some: 'data' })`, становятся доступны через свойство "detail" события: `$event.detail.some`. Добавление событию пользовательских данных через свойство `.detail` – стандартная практика для `CustomEvent` в браузерах. [Подробнее здесь](https://developer.mozilla.org/en-US/docs/Web/API/CustomEvent/detail).
Expand All @@ -634,6 +676,12 @@ Alpine предлагает 6 разных transition-директив для д
</div>
```

> Замечание: Свойство $dispatch доступно только в DOM-выражениях.
Если вам нужен доступ к $dispatch внутри JS-функции, вы можете передать его напрямую:

`<button x-on:click="myFunction($dispatch)"></button>`

---

### `$nextTick`
Expand Down

0 comments on commit 2cb788d

Please sign in to comment.