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: docs/ru/api.md
+22-5Lines changed: 22 additions & 5 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -12,11 +12,11 @@ const store = new Vuex.Store({ ...options })
12
12
13
13
-**state**
14
14
15
-
- тип: `Object`
15
+
- тип: `Object | Function`
16
16
17
-
Корневой объект состояния хранилища Vuex.
17
+
Корневой объект состояния хранилища Vuex.[Подробнее](state.md)
18
18
19
-
[Подробнее](state.md)
19
+
Если вы передаёте функцию, возвращающую объект, то возвращаемый объект будет использован в качестве корневого состояния. Это может быть полезным, если вы хотите повторно использовать объект состояния, особенно при повтоном использовании модулей. [Подробнее](modules.md#повторное-использование-модулей)
20
20
21
21
-**mutations**
22
22
@@ -145,7 +145,7 @@ const store = new Vuex.Store({ ...options })
145
145
146
146
-**`subscribe(handler: Function)`**
147
147
148
-
Подписывается на мутации хранилища. `handler` вызывается после каждой мутации и получает в качестве параметров дескриптор мутации и состояние после мутации:
148
+
Подписывается на мутации хранилища. Обработчик `handler` вызывается после каждой мутации и получает в качестве параметров дескриптор мутации и состояние после мутации:
149
149
150
150
``` js
151
151
store.subscribe((mutation, state) => {
@@ -156,10 +156,27 @@ const store = new Vuex.Store({ ...options })
156
156
157
157
Чаще всего используется в плагинах. [Подробнее](plugins.md)
Подписывается на действие хранилища. Обработчик `handler` вызывается после каждого дейсвтия и получает в качестве параметров дескриптов действия и текущее состояние хранилища:
164
+
165
+
``` js
166
+
store.subscribeAction((action, state) => {
167
+
console.log(action.type)
168
+
console.log(action.payload)
169
+
})
170
+
```
171
+
172
+
Чаще всего используется в плагинах. [Подробнее](plugins.md)
Удалить динамически зарегистрированный модуль можно с помощью `store.unregisterModule(moduleName)`. Обратите внимание, что статические (определённые на момент создания хранилища) модули при помощи этого метода удалить не получится.
271
271
272
+
Вероятно, вы хотите сохранить предыдущее состояние при регистрации нового модуля, например сохранить состояние из приложения с рендерингом на стороне сервера. Вы можете этого добиться с помощью опции `preserveState`: `store.registerModule('a', module, { preserveState: true })`
273
+
272
274
### Повторное использование модулей
273
275
274
276
Иногда нам может потребоваться создать несколько экземпляров модуля, например:
Copy file name to clipboardExpand all lines: docs/ru/testing.md
+2-2Lines changed: 2 additions & 2 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -4,7 +4,7 @@
4
4
5
5
### Тестирование мутаций
6
6
7
-
Мутации тестировать довольно просто, так как они представляют из себя всего лишь чистые функции, поведение которых полностью зависит от переданных параметров. Может пригодится возможность ES2015-модулей для самостоятельного именованного экспорта мутаций, наряду с экспортом самого хранилища из файла `store.js`:
7
+
Мутации тестировать довольно просто, так как они представляют из себя всего лишь простые функции, поведение которых полностью зависит от переданных параметров. Может пригодится возможность ES2015-модулей для самостоятельного именованного экспорта мутаций, наряду с экспортом самого хранилища из файла `store.js`:
8
8
9
9
```js
10
10
conststate= { ... }
@@ -219,4 +219,4 @@ mocha test-bundle.js
219
219
220
220
#### Запуск в браузерах при помощи Karma и karma-webpack
221
221
222
-
Обратитесь к [документации vue-loader](https://vue-loader.vuejs.org/en/workflow/testing.html).
222
+
Обратитесь к [документации vue-loader](https://vue-loader.vuejs.org/ru/workflow/testing.html).
0 commit comments