Skip to content

Commit 00f4f43

Browse files
gbezyukposva
authored andcommitted
[JUST MERGE ME] Russian Translation Update (#1364)
* add entry for Russian docs * copy en docs for ru translation * translation for ru/installation.md * ru/README.md translation * ru/SUMMARY.md translation (same as README.md) * ru/essentials/getting-started.md ru translation * ru/essentials/dynamic-matching.md ru translation * ru/essentials/nested-routes.md ru translation * ru/essentials/navigation.md ru translation * ru/essentials/named-routes.md ru translation * ru/essentials/named-views.md ru translation * ru/essentials/redirect-and-alias.md ru translation * ru/essentials/history-mode.md ru translation * ru/advanced/navigation-guards.md translation * ru/advanced/meta.md translation * ru/advanced/transitions.md translation * ru/advanced/data-fetching.md translation * ru/advanced/scroll-behavior.md translation * ru/advanced/lazy-loading.md translation * README.md and SUMMARY.md translation updates * ru/api/component-injections.md translation * ru/api/options.md translation * ru/api/route-object.md translation * ru/api/router-instance.md translation * ru/api/router-view.md translation * ru/api/router-link.md translation * Update scroll-behavior.md * ru/essentials proof-reading * ru/advanced proof-reading * ru/api proof-reading * updated to match 2.1.1 * Typofix * Fix typo * Правки по сторожевых хуков * Правки по странице Route-object * Исправление свойства на странице router-link * Исправление ссылки на странице getting-started * Исправления в оглавлении * Исправления по странице установки * Правки на странице введения * Добавлен пункт для страницы введения (чтобы локализовался в боковой панели) * Добавилась пустая строка в конце файла * Капитализация Vue-router * Исправлена капитализация CSS * Исправлена ошибка на странице router-link * Изменены врапперы на обертки на странице router-view * Правка на странице component-injections * Изменения по странице dynamic-matching * Изменение капитализации Vue-router * Исправлена ошибка в заголовке на странице named-routes * Изменен сайдбар на боковую панель на странице named-views.md * Изменения по странице navigation.md * Изменена капитализация Vue-router * Исправлена капитализация Vue-router и ошибка на странице navigation-guards * Мелкие правки по странице scroll-behaviour * Исправления на странице navigation-guards * Исправления на странице navigation-guards * - router-link.md добавлено уточнение * - navigation.md перевод новой секции для 2.2.0 * -navigation-guards переведен новый коллбек * - options.md добавлена опция props * - router-instance добавлено новое в 2.2.0 * - passing-props.md переведена новая страница * - Правка * - route-object.md исправление упоминания хэша * passing-props.md расширен пример * component-injections.md добавлена опция * navigation.md добавлено примечание * options.md добавления для 2.4.0 * router-instance.md добавления для 2.4.0 * navigation-guards.md добавления для 2.4.0 * lazy-loading.md изменена ссылка * transitions.md изменена ссылка * getting-started.md изменена ссылка * redirect-and-alias.md удалены пробелы * data-fetching.md обновления к 2.5.0 * dynamic-matching.md добавлен пример с beforeRouteUpdate * router-instance.md добавлен метод router.beforeResolve(guard) * navigation-guards.md доработки к 2.5.0 * component-injections.md исправлен якорь в ссылке * Update navigation-guards.md * Update navigation-guards.md
1 parent c3b133f commit 00f4f43

File tree

5 files changed

+55
-22
lines changed

5 files changed

+55
-22
lines changed

docs/ru/advanced/data-fetching.md

Lines changed: 17 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,7 @@ export default {
4242
error: null
4343
}
4444
},
45-
created () {
45+
created () {
4646
// запрашиваем данные когда реактивное представление уже создано
4747
this.fetchData()
4848
},
@@ -82,31 +82,28 @@ export default {
8282
},
8383
beforeRouteEnter (to, from, next) {
8484
getPost(to.params.id, (err, post) => {
85-
if (err) {
86-
// здесь стоит отобразить некоторое глобальное сообщение ошибке
87-
next(false)
88-
} else {
89-
next(vm => {
90-
vm.post = post
91-
})
92-
}
85+
next(vm => vm.setData(err, post))
9386
})
9487
},
9588
// если путь изменяется, а компонент уже отображён,
9689
// логика будет немного иной
97-
watch: {
98-
$route () {
99-
this.post = null
100-
getPost(this.$route.params.id, (err, post) => {
101-
if (err) {
102-
this.error = err.toString()
103-
} else {
104-
this.post = post
105-
}
106-
})
90+
beforeRouteUpdate (to, from, next) {
91+
this.post = null
92+
getPost(to.params.id, (err, post) => {
93+
this.setData(err, post)
94+
next()
95+
})
96+
},
97+
methods: {
98+
setData (err, post) {
99+
if (err) {
100+
this.error = err.toString()
101+
} else {
102+
this.post = post
103+
}
107104
}
108105
}
109106
}
110107
```
111108

112-
Пользователь останется на старой странице, пока не загрузятся данные новой. По этой причине мы советуем отображать какой-нибудь индикатор загрузки. Кроме того, если загрузка данных не удастся, следует отобразить глобальное сообщение об ошибке.
109+
Пользователь останется на предыдущей странице, пока не загрузятся данные новой. По этой причине мы советуем отображать какой-нибудь индикатор загрузки. Кроме того, если загрузка данных не удастся, следует отобразить глобальное сообщение об ошибке.

docs/ru/advanced/navigation-guards.md

Lines changed: 24 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
Как следует из названия, сторожевые хуки `Vue-router` используются для редиректов или отмены навигационных переходов. Есть несколько способов внедрить сторожевой хук: глобально, для конкретного пути, или для конкретного компонента.
44

5-
Запомните **изменение параметров не вызывает сторожевые хуки**. Просто добавьте [watch на объект `$route`](../essentials/dynamic-matching.md#reacting-to-params-changes) для отслеживания этих изменений.
5+
Следует помнить, что **изменение параметров маршрута не вызывает выполнения сторожевых хуков enter/leave**. Вы можете добавить [watch на объект `$route`](../essentials/dynamic-matching.md#отслеживание-изменений-параметров) для отслеживания этих изменений, или использовать хук `beforeRouteUpadte`.
66

77
### Глобальные хуки
88

@@ -36,6 +36,14 @@ router.beforeEach((to, from, next) => {
3636

3737
**Удостоверьтесь, что функция `next` так или иначе будет вызвана, иначе хук никогда не будет разрешён.**
3838

39+
### Глобальные хуки разрешения перехода
40+
41+
> Добавлено в версии 2.5.0
42+
43+
В 2.5.0+ вы можете зарегистрировать глобальный хук с помощью `router.beforeResolve`. Это похоже на `router.beforeEach`, с той разницей, что разрешающий хук будет вызван непосредственно перед подтверждением навигации, **после того, как будут разрешены все хуки компонента и асинхронные компоненты для маршрута**.
44+
45+
### Глобальные хуки завершения перехода
46+
3947
Можно также зарегистрировать глобальные хуки, вызываемые после завершения перехода. Однако, в отличие от сторожевых хуков, в них не передаётся функция `next`, и на ход перехода они повлиять не могут:
4048

4149
``` js
@@ -108,3 +116,18 @@ beforeRouteEnter (to, from, next) {
108116
```
109117

110118
Внутри `beforeRouteLeave` можно обращаться к `this` напрямую. Этот сторожевой хук обычно используется для предотвращения случайного ухода пользователя с пути, содержащего несохранённые отредактированные данные. Переход можно отменить, вызвав `next(false)`.
119+
120+
### Полная цепочка обработки навигации
121+
122+
1. Срабатывание навигации
123+
2. Вызов leave-хуков в деактивируемых компонентах
124+
3. Вызов глобальных `beforeEach` хуков
125+
4. Вызов `beforeRouteUpdate` хука в переиспользуемых компонентах (2.2+)
126+
5. Вызов `beforeEnter` в конфигурации маршрута
127+
6. Разрешение асинхронных компонентов для маршрута
128+
7. Вызов `beforeRouteEnter` в активируемых компонентах
129+
8. Вызов глобальных `beforeResolve` хуков (2.5+)
130+
9. Навигация подтверждена
131+
10. Вызов глобальных `afterEach` хуков.
132+
11. Выполняется обновление DOM.
133+
12. Вызов коллбэков, переданных в `next` в `beforeRouteEnter` хуке с созданными экземплярами.

docs/ru/api/component-injections.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,4 +18,4 @@
1818
- **beforeRouteUpdate** (добавлено в версии 2.2)
1919
- **beforeRouteLeave**
2020

21-
См. [раздел документации о сторожевых хуках](../advanced/navigation-guards.md#incomponent-guards).
21+
См. [раздел документации о сторожевых хуках](../advanced/navigation-guards.md#указание-хука-для-конкретного-компонента).

docs/ru/api/router-instance.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,7 @@
2323
### Методы
2424

2525
- **router.beforeEach(guard)**
26+
- **router.beforeResolve(guard)** (добавлено в версии 2.5.0+)
2627
- **router.afterEach(hook)**
2728

2829
См. [сторожевые хуки](../advanced/navigation-guards.md).

docs/ru/essentials/dynamic-matching.md

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -53,6 +53,18 @@ const User = {
5353
}
5454
```
5555

56+
Или можно воспользоваться хуком `beforeRouteUpdate`, добавленным в версии 2.2:
57+
58+
``` js
59+
const User = {
60+
template: '...',
61+
beforeRouteUpdate (to, from, next) {
62+
// обработка изменений параметров пути...
63+
// не забудьте вызывать next()
64+
}
65+
}
66+
```
67+
5668
### Продвинутые возможности
5769

5870
`Vue-router` использует [path-to-regexp](https://github.com/pillarjs/path-to-regexp) в качестве движка для проверки совпадения путей, что позволяет задействовать многие продвинутые возможности, включая опциональные динамические сегменты и регулярные выражения. [Документация библиотеки](https://github.com/pillarjs/path-to-regexp#parameters) содержит информацию об этих возможностях роутинга, а [этот пример](https://github.com/vuejs/vue-router/blob/dev/examples/route-matching/app.js) — о том, как использовать их совместно с `Vue-router`.

0 commit comments

Comments
 (0)