Skip to content

Commit 0af686f

Browse files
committed
Merge remote-tracking branch 'main/dev' into feature/improve-helpers-typings
2 parents 623c526 + 75edfc5 commit 0af686f

34 files changed

+344
-87
lines changed

LICENSE

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
The MIT License (MIT)
22

3-
Copyright (c) 2015-2016 Evan You
3+
Copyright (c) 2015-present Evan You
44

55
Permission is hereby granted, free of charge, to any person obtaining a copy
66
of this software and associated documentation files (the "Software"), to deal

docs/fr/state.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -81,7 +81,7 @@ export default {
8181
}
8282
```
8383

84-
Il est également possible de fournir un tableau de chaines de caractères à `mapState` lorsque le nom de la propriété de l'état du store est le même que celui du composant.
84+
Il est également possible de fournir un tableau de chaines de caractères à `mapState` lorsque le nom de la propriété calculée associée est le même que le nom de l'état du store.
8585

8686
``` js
8787
computed: mapState([

docs/ru/SUMMARY.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,15 +6,15 @@
66
- [Установка](installation.md)
77
- [Что такое Vuex?](intro.md)
88
- [Начало работы](getting-started.md)
9-
- [Основные концепции](core-concepts.md)
9+
- [Основные понятия](core-concepts.md)
1010
- [Состояние](state.md)
1111
- [Геттеры](getters.md)
1212
- [Мутации](mutations.md)
1313
- [Действия](actions.md)
1414
- [Модули](modules.md)
1515
- [Структура приложения](structure.md)
1616
- [Плагины](plugins.md)
17-
- [Strict Mode](strict.md)
17+
- [Строгий режим (strict mode)](strict.md)
1818
- [Обработка форм](forms.md)
1919
- [Тестирование](testing.md)
2020
- [Горячая замена](hot-reload.md)

docs/ru/actions.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,7 @@ actions: {
4545
store.dispatch('increment')
4646
```
4747

48-
На первый взгляд может выглядеть глупо: если мы хотим инкрементировать переменную count, почему бы просто не вызвать `store.commit('increment')` напрямую? Запомните, что **мутации должны быть синхронными**. Действия же этим ограничением не скованы. Внутри действия можно выполнять **асинхронные** операции:
48+
На первый взгляд может выглядеть глупо: если мы хотим увеличить значение count, почему бы просто не вызвать `store.commit('increment')` напрямую? Помните что **мутации должны быть синхронными**? Для действий такого ограничения нет. Внутри действий можно выполнять **асинхронные** операции:
4949

5050
``` js
5151
actions: {
@@ -98,7 +98,7 @@ actions: {
9898

9999
### Диспетчеризация действий в компонентах
100100

101-
Диспетчеризовать действия в компонентах можно при помощи `this.$store.dispatch('xxx')`, или используя вспомогательную функцию `mapActions`, создающую локальные псевдонимы для действий в виде методов компонента (требуется наличие корневого `$store`):
101+
Диспетчеризировать действия в компонентах можно при помощи `this.$store.dispatch('xxx')` или используя вспомогательную функцию `mapActions`, создающую локальные псевдонимы для действий в виде методов компонента (требуется наличие корневого `$store`):
102102

103103
``` js
104104
import { mapActions } from 'vuex'
@@ -159,7 +159,7 @@ actions: {
159159
}
160160
```
161161

162-
Наконец, если мы используем [async / await](https://tc39.github.io/ecmascript-asyncawait/), мы можем компоновать наши действия следующим образом:
162+
Наконец, если мы используем [async / await](https://tc39.github.io/ecmascript-asyncawait/), то можем компоновать наши действия следующим образом:
163163

164164
``` js
165165
// предположим, что `getData()` и `getOtherData()` возвращают Promise

docs/ru/api.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -97,7 +97,7 @@ const store = new Vuex.Store({ ...options })
9797

9898
- тип: `Array<Function>`
9999

100-
Массив функций-плагинов, которые будут применены к хранилищу. Плагины попросту получают хранилище в качестве единственного аргумента, и могут как отслеживать мутации (для сохранения исходящих данных, логирования, или отладки) или инициировать их (для обработки входящих данных, например вебсокетов или observables).
100+
Массив функций-плагинов, которые будут применены к хранилищу. Плагины попросту получают хранилище в качестве единственного аргумента, и могут как отслеживать мутации (для сохранения исходящих данных, логирования или отладки) или инициировать их (для обработки входящих данных, например, веб-сокетов или наблюдателей).
101101

102102
[Подробнее](plugins.md)
103103

@@ -136,7 +136,7 @@ const store = new Vuex.Store({ ...options })
136136

137137
- **`replaceState(state: Object)`**
138138

139-
Позволяет заменить корневое состояние хранилища. Используйте только для гидрации состояния / функционала "машины времени".
139+
Позволяет заменить корневое состояние хранилища. Используйте только для гидрации состояния / функциональности "машины времени".
140140

141141
- **`watch(getter: Function, cb: Function, options?: Object)`**
142142

docs/ru/getters.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ computed: {
1010
}
1111
```
1212

13-
Если этот функционал требуется более чем одному компоненту, понадобится либо дублировать функцию, либо выносить её в совместно используемый хелпер и импортировать в нескольких местах. Оба эти подхода далеки от идеала.
13+
Если эта функциональность требуется более чем одному компоненту, понадобится либо дублировать функцию, либо выносить её в совместно используемый хелпер и импортировать в нескольких местах. Оба эти подхода далеки от идеала.
1414

1515
Vuex позволяет определять в хранилище «геттеры». Вы можете считать их вычисляемыми свойствами для хранилища. Как и вычисляемые свойства, результаты геттера кэшируются, основываясь на своих зависимостях и будут пересчитаны только тогда, когда изменится одна из его зависимостей.
1616

@@ -53,7 +53,7 @@ getters: {
5353
store.getters.doneTodosCount // -> 1
5454
```
5555

56-
В компонентах геттеры можно использовать например таким образом:
56+
В компонентах геттеры можно использовать, например, таким образом:
5757

5858
``` js
5959
computed: {

docs/ru/getting-started.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44

55
1. Хранилища Vuex реактивны. Если компоненты Vue зависят от их состояния, изменение состояния хранилища спровоцирует соответствующие изменения компонентов.
66

7-
2. Непосредственное изменение состояния хранилища запрещено. Единственный способ внести изменения — явно **вызвать мутацию**. Этот подход позволяет быть уверенным, что каждое изменение оставляет в системе след, и даёт возможность использовать инструменты, позволяющие лучше понять работу приложения.
7+
2. Непосредственное изменение состояния хранилища запрещено. Единственный способ внести изменения — явно **вызвать мутацию**. Этот подход позволяет быть уверенным, что каждое изменение оставляет в системе след и даёт возможность использовать инструменты, позволяющие лучше понять работу приложения.
88

99
### Простейшее Хранилище
1010

@@ -27,7 +27,7 @@ const store = new Vuex.Store({
2727
})
2828
```
2929

30-
Теперь мы можем получить доступ к объекту состояния `store.state`, или вызвать изменение состояния методом `store.commit`:
30+
Теперь мы можем получить доступ к объекту состояния `store.state` или вызвать изменение состояния методом `store.commit`:
3131

3232
``` js
3333
store.commit('increment')

docs/ru/hot-reload.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# Горячая замена
22

3-
Vuex поддерживает горячую замену мутаций, модулей, действий и геттеров в момент разработки с помощью [webpack Hot Module Replacement API](https://webpack.js.org/guides/hot-module-replacement/). Аналогичный функционал в Browserify достижим при использовании плагина [browserify-hmr](https://github.com/AgentME/browserify-hmr/).
3+
Vuex поддерживает горячую замену мутаций, модулей, действий и геттеров в момент разработки с помощью [webpack Hot Module Replacement API](https://webpack.js.org/guides/hot-module-replacement/). Аналогичная функциональность в Browserify достижима при использовании плагина [browserify-hmr](https://github.com/AgentME/browserify-hmr/).
44

55
Для мутаций и модулей необходимо использовать метод API `store.hotUpdate()`:
66

docs/ru/intro.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# Что такое Vuex?
22

3-
Vuex - это **паттерн управления состоянием и библиотека** для приложений на Vue.js. Он служит центральным хранилищем данных для всех компонентов приложения и обеспечивает предсказуемость изменения данных при помощи определённых правил. Кроме того, Vuex интегрируется с официальным [расширением инструментов разработчика](https://github.com/vuejs/vue-devtools) Vue, предоставляя "из коробки" такие продвинутые возможности как "машину времени" при отладке и экспорт/импорт слепков состояния данных.
3+
Vuex это **паттерн управления состоянием и библиотека** для приложений на Vue.js. Он служит центральным хранилищем данных для всех компонентов приложения и обеспечивает предсказуемость изменения данных при помощи определённых правил. Кроме того, Vuex интегрируется с официальным [расширением инструментов разработчика](https://github.com/vuejs/vue-devtools) Vue, предоставляя "из коробки" такие продвинутые возможности, как "машину времени" при отладке и экспорт/импорт слепков состояния данных.
44

55
### Что такое "паттерн управления состоянием"?
66

@@ -48,7 +48,7 @@ new Vue({
4848

4949
Так почему бы не вынести всё общее состояние приложения из компонентов в глобальный синглтон? При использовании этого подхода, дерево компонентов превращается в одно большое "представление", а каждый компонент получает доступ к состоянию приложения, наряду с возможностью вызывать действия для изменения состояния, независимо от расположения этого компонента в дереве.
5050

51-
Кроме того, чётко определяя и разделяя концепции, возникающие при управлении состоянием и требуя соблюдения некоторых правил, мы улучшаем структурированность и поддерживаемость нашего кода.
51+
Кроме того, чётко определяя и разделяя концепции, возникающие при управлении состоянием, и требуя соблюдения некоторых правил, мы улучшаем структурированность и поддерживаемость нашего кода.
5252

5353
Такова основная идея, лежащая в основе Vuex, вдохновлённого [Flux](https://facebook.github.io/flux/docs/overview.html), [Redux](http://redux.js.org/) и [Архитектурой Elm](https://guide.elm-lang.org/architecture/). В отличие от других паттернов, Vuex реализован в виде библиотеки, специально заточенной на использование совместно с Vue.js и использующей его производительную систему реактивных обновлений.
5454

docs/ru/modules.md

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

33
Из-за использования единого дерева состояния, все глобальные данные приложения оказываются помещены в один большой объект. По мере роста приложения, хранилище может существенно раздуться.
44

5-
Чтобы помочь в этой беде, Vuex позволяет разделять хранилище на **модули**. Каждый модуль может содержать собственное состояние, мутации, действия, геттеры, и даже встроенные подмодули — структура фрактальна:
5+
Чтобы помочь в этой беде, Vuex позволяет разделять хранилище на **модули**. Каждый модуль может содержать собственное состояние, мутации, действия, геттеры и даже встроенные подмодули — структура фрактальна:
66

77
``` js
88
const moduleA = {
@@ -280,7 +280,7 @@ store.registerModule(['nested', 'myModule'], {
280280

281281
Если мы используем просто объект для определения состояния модуля, тогда этот объект состояния будет использоваться по ссылке и вызывать загрязнение состояния хранилища / модуля при его мутациях.
282282

283-
Это фактически та же самая проблема с `data` внутри компонентов Vue. Таким образом решение будет таким же - использовать функцию для объявления состояния модуля (поддержка добавлена в версии 2.3.0+):
283+
Это фактически та же самая проблема с `data` внутри компонентов Vue. Таким образом решение будет таким же использовать функцию для объявления состояния модуля (поддержка добавлена в версии 2.3.0+):
284284

285285
``` js
286286
const MyReusableModule = {

docs/ru/mutations.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# Мутации
22

3-
Единственным способом изменения состояния хранилища во Vuex являются мутации. Мутации во Vuex очень похожи на события: каждая мутация имеет строковый **тип** и **функцию-обработчик**. В этом обработчике и происходят собственно изменения состояния, переданного в функцию первым аргументом:
3+
Единственным способом изменения состояния хранилища во Vuex являются мутации. Мутации во Vuex очень похожи на события: каждая мутация имеет строковый **тип** и **функцию-обработчик**. В этом обработчике и происходят, собственно, изменения состояния, переданного в функцию первым аргументом:
44

55
``` js
66
const store = new Vuex.Store({

0 commit comments

Comments
 (0)