Browse Source

[RU] Translation update (#1116)

* structure.md исправлена опечатка

* actions.md мелкие правки

* api.md мелкие правки

* intro.md мелкие правки

* state.md мелкие правки

* strict.md мелкие правки

* testing.md мелкие правки

* actions.md правки

* testing.md правки

* Fix typos. ru

* SUMMARY.md правки заголовков

* Минусы на тире
Alexander Sokolov 7 years ago
parent
commit
9d643db358

+ 2 - 2
docs/ru/SUMMARY.md

@@ -6,7 +6,7 @@
 - [Установка](installation.md)
 - [Что такое Vuex?](intro.md)
 - [Начало работы](getting-started.md)
-- [Основные концепции](core-concepts.md)
+- [Основные понятия](core-concepts.md)
   - [Состояние](state.md)
   - [Геттеры](getters.md)
   - [Мутации](mutations.md)
@@ -14,7 +14,7 @@
   - [Модули](modules.md)
 - [Структура приложения](structure.md)
 - [Плагины](plugins.md)
-- [Strict Mode](strict.md)
+- [Строгий режим (strict mode)](strict.md)
 - [Обработка форм](forms.md)
 - [Тестирование](testing.md)
 - [Горячая замена](hot-reload.md)

+ 2 - 2
docs/ru/actions.md

@@ -98,7 +98,7 @@ actions: {
 
 ### Диспетчеризация действий в компонентах
 
-Диспетчеризовать действия в компонентах можно при помощи `this.$store.dispatch('xxx')`, или используя вспомогательную функцию `mapActions`, создающую локальные псевдонимы для действий в виде методов компонента (требуется наличие корневого `$store`):
+Диспетчеризировать действия в компонентах можно при помощи `this.$store.dispatch('xxx')` или используя вспомогательную функцию `mapActions`, создающую локальные псевдонимы для действий в виде методов компонента (требуется наличие корневого `$store`):
 
 ``` js
 import { mapActions } from 'vuex'
@@ -159,7 +159,7 @@ actions: {
 }
 ```
 
-Наконец, если мы используем [async / await](https://tc39.github.io/ecmascript-asyncawait/), мы можем компоновать наши действия следующим образом:
+Наконец, если мы используем [async / await](https://tc39.github.io/ecmascript-asyncawait/), то можем компоновать наши действия следующим образом:
 
 ``` js
 // предположим, что `getData()` и `getOtherData()` возвращают Promise

+ 2 - 2
docs/ru/api.md

@@ -97,7 +97,7 @@ const store = new Vuex.Store({ ...options })
 
   - тип: `Array<Function>`
 
-    Массив функций-плагинов, которые будут применены к хранилищу. Плагины попросту получают хранилище в качестве единственного аргумента, и могут как отслеживать мутации (для сохранения исходящих данных, логирования, или отладки) или инициировать их (для обработки входящих данных, например вебсокетов или observables).
+    Массив функций-плагинов, которые будут применены к хранилищу. Плагины попросту получают хранилище в качестве единственного аргумента, и могут как отслеживать мутации (для сохранения исходящих данных, логирования или отладки) или инициировать их (для обработки входящих данных, например, веб-сокетов или наблюдателей).
 
     [Подробнее](plugins.md)
 
@@ -136,7 +136,7 @@ const store = new Vuex.Store({ ...options })
 
 - **`replaceState(state: Object)`**
 
-  Позволяет заменить корневое состояние хранилища. Используйте только для гидрации состояния / функционала "машины времени".
+  Позволяет заменить корневое состояние хранилища. Используйте только для гидрации состояния / функциональности "машины времени".
 
 - **`watch(getter: Function, cb: Function, options?: Object)`**
 

+ 2 - 2
docs/ru/getters.md

@@ -10,7 +10,7 @@ computed: {
 }
 ```
 
-Если этот функционал требуется более чем одному компоненту, понадобится либо дублировать функцию, либо выносить её в совместно используемый хелпер и импортировать в нескольких местах. Оба эти подхода далеки от идеала.
+Если эта функциональность требуется более чем одному компоненту, понадобится либо дублировать функцию, либо выносить её в совместно используемый хелпер и импортировать в нескольких местах. Оба эти подхода далеки от идеала.
 
 Vuex позволяет определять в хранилище «геттеры». Вы можете считать их вычисляемыми свойствами для хранилища. Как и вычисляемые свойства, результаты геттера кэшируются, основываясь на своих зависимостях и будут пересчитаны только тогда, когда изменится одна из его зависимостей.
 
@@ -53,7 +53,7 @@ getters: {
 store.getters.doneTodosCount // -> 1
 ```
 
-В компонентах геттеры можно использовать например таким образом:
+В компонентах геттеры можно использовать, например, таким образом:
 
 ``` js
 computed: {

+ 2 - 2
docs/ru/getting-started.md

@@ -4,7 +4,7 @@
 
 1. Хранилища Vuex реактивны. Если компоненты Vue зависят от их состояния, изменение состояния хранилища спровоцирует соответствующие изменения компонентов.
 
-2. Непосредственное изменение состояния хранилища запрещено. Единственный способ внести изменения — явно **вызвать мутацию**. Этот подход позволяет быть уверенным, что каждое изменение оставляет в системе след, и даёт возможность использовать инструменты, позволяющие лучше понять работу приложения.
+2. Непосредственное изменение состояния хранилища запрещено. Единственный способ внести изменения — явно **вызвать мутацию**. Этот подход позволяет быть уверенным, что каждое изменение оставляет в системе след и даёт возможность использовать инструменты, позволяющие лучше понять работу приложения.
 
 ### Простейшее Хранилище
 
@@ -27,7 +27,7 @@ const store = new Vuex.Store({
 })
 ```
 
-Теперь мы можем получить доступ к объекту состояния `store.state`, или вызвать изменение состояния методом `store.commit`:
+Теперь мы можем получить доступ к объекту состояния `store.state` или вызвать изменение состояния методом `store.commit`:
 
 ``` js
 store.commit('increment')

+ 1 - 1
docs/ru/hot-reload.md

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

+ 2 - 2
docs/ru/intro.md

@@ -1,6 +1,6 @@
 # Что такое Vuex?
 
-Vuex - это **паттерн управления состоянием и библиотека** для приложений на Vue.js. Он служит центральным хранилищем данных для всех компонентов приложения и обеспечивает предсказуемость изменения данных при помощи определённых правил. Кроме того, Vuex интегрируется с официальным [расширением инструментов разработчика](https://github.com/vuejs/vue-devtools) Vue, предоставляя "из коробки" такие продвинутые возможности как "машину времени" при отладке и экспорт/импорт слепков состояния данных.
+Vuex  это **паттерн управления состоянием и библиотека** для приложений на Vue.js. Он служит центральным хранилищем данных для всех компонентов приложения и обеспечивает предсказуемость изменения данных при помощи определённых правил. Кроме того, Vuex интегрируется с официальным [расширением инструментов разработчика](https://github.com/vuejs/vue-devtools) Vue, предоставляя "из коробки" такие продвинутые возможности, как "машину времени" при отладке и экспорт/импорт слепков состояния данных.
 
 ### Что такое "паттерн управления состоянием"?
 
@@ -48,7 +48,7 @@ new Vue({
 
 Так почему бы не вынести всё общее состояние приложения из компонентов в глобальный синглтон? При использовании этого подхода, дерево компонентов превращается в одно большое "представление", а каждый компонент получает доступ к состоянию приложения, наряду с возможностью вызывать действия для изменения состояния, независимо от расположения этого компонента в дереве.
 
-Кроме того, чётко определяя и разделяя концепции, возникающие при управлении состоянием и требуя соблюдения некоторых правил, мы улучшаем структурированность и поддерживаемость нашего кода.
+Кроме того, чётко определяя и разделяя концепции, возникающие при управлении состоянием, и требуя соблюдения некоторых правил, мы улучшаем структурированность и поддерживаемость нашего кода.
 
 Такова основная идея, лежащая в основе 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 и использующей его производительную систему реактивных обновлений.
 

+ 2 - 2
docs/ru/modules.md

@@ -2,7 +2,7 @@
 
 Из-за использования единого дерева состояния, все глобальные данные приложения оказываются помещены в один большой объект. По мере роста приложения, хранилище может существенно раздуться.
 
-Чтобы помочь в этой беде, Vuex позволяет разделять хранилище на **модули**. Каждый модуль может содержать собственное состояние, мутации, действия, геттеры, и даже встроенные подмодули — структура фрактальна:
+Чтобы помочь в этой беде, Vuex позволяет разделять хранилище на **модули**. Каждый модуль может содержать собственное состояние, мутации, действия, геттеры и даже встроенные подмодули — структура фрактальна:
 
 ``` js
 const moduleA = {
@@ -280,7 +280,7 @@ store.registerModule(['nested', 'myModule'], {
 
 Если мы используем просто объект для определения состояния модуля, тогда этот объект состояния будет использоваться по ссылке и вызывать загрязнение состояния хранилища / модуля при его мутациях.
 
-Это фактически та же самая проблема с `data` внутри компонентов Vue. Таким образом решение будет таким же - использовать функцию для объявления состояния модуля (поддержка добавлена в версии 2.3.0+):
+Это фактически та же самая проблема с `data` внутри компонентов Vue. Таким образом решение будет таким же  использовать функцию для объявления состояния модуля (поддержка добавлена в версии 2.3.0+):
 
 ``` js
 const MyReusableModule = {

+ 1 - 1
docs/ru/mutations.md

@@ -1,6 +1,6 @@
 # Мутации
 
-Единственным способом изменения состояния хранилища во Vuex являются мутации. Мутации во Vuex очень похожи на события: каждая мутация имеет строковый **тип** и **функцию-обработчик**. В этом обработчике и происходят собственно изменения состояния, переданного в функцию первым аргументом:
+Единственным способом изменения состояния хранилища во Vuex являются мутации. Мутации во Vuex очень похожи на события: каждая мутация имеет строковый **тип** и **функцию-обработчик**. В этом обработчике и происходят, собственно, изменения состояния, переданного в функцию первым аргументом:
 
 ``` js
 const store = new Vuex.Store({

+ 4 - 4
docs/ru/plugins.md

@@ -25,7 +25,7 @@ const store = new Vuex.Store({
 
 Плагинам не разрешается напрямую изменять состояние приложения — как и компоненты, они могут только вызывать изменения опосредованно, используя мутации.
 
-Вызывая мутации, плагин может синхронизировать источник данных с хранилищем данных в приложении. Например, для синхронизации хранилища с вебсокетом (пример намеренно упрощён, в реальной ситуации у `createPlugin` были бы дополнительные опции):
+Вызывая мутации, плагин может синхронизировать источник данных с хранилищем данных в приложении. Например, для синхронизации хранилища с веб-сокетом (пример намеренно упрощён, в реальной ситуации у `createPlugin` были бы дополнительные опции):
 
 ``` js
 export default function createWebSocketPlugin (socket) {
@@ -103,8 +103,8 @@ const store = new Vuex.Store({
 const logger = createLogger({
   collapsed: false, // автоматически раскрывать залогированные мутации
   filter (mutation, stateBefore, stateAfter) {
-    // возвращает `true` если мутация должна быть залогирована
-    // `mutation` это объект `{ type, payload }`
+    // возвращает `true`, если мутация должна быть залогирована
+    // `mutation` это объект `{ type, payload }`
     return mutation.type !== "aBlacklistedMutation"
   },
   transformer (state) {
@@ -121,6 +121,6 @@ const logger = createLogger({
 })
 ```
 
-Логирующий плагин можно включить также и используя отдельный тег `<script>`, помещающий функцию `createVuexLogger` в глобальное пространство имён.
+Логирующий плагин также можно включить напрямую используя отдельный тег `<script>`, помещающий функцию `createVuexLogger` в глобальное пространство имён.
 
 Обратите внимание, что этот плагин делает слепки состояний, поэтому использовать его стоит только на этапе разработки.

+ 1 - 1
docs/ru/state.md

@@ -2,7 +2,7 @@
 
 ### Единое дерево состояния
 
-Vuex использует **единое дерево состояния** - таким образом, один-единственный объект содержит всё глобальное состояние приложения и служит "единственным источником истины". Кроме того, это значит, что обычно для каждого приложения существует только одно хранилище. Благодаря единому дереву можно легко найти нужную часть состояния или делать слепки всего состояния приложения для отладки.
+Vuex использует **единое дерево состояния**  таким образом, один-единственный объект содержит всё глобальное состояние приложения и служит "единственным источником истины". Кроме того, это значит, что обычно для каждого приложения существует только одно хранилище. Благодаря единому дереву можно легко найти нужную часть состояния или делать слепки всего состояния приложения для отладки.
 
 Единое дерево состояния не конфликтует с концепцией модульности — в последующих главах мы расскажем, как можно разбить хранилище на подмодули.
 

+ 3 - 3
docs/ru/strict.md

@@ -9,11 +9,11 @@ const store = new Vuex.Store({
 })
 ```
 
-В строгом режиме любая попытка внесения изменений в состояние Vuex кроме мутаций будет выбрасывать ошибку. Это гарантирует, что все мутации состояния будут явно отслеживаться через инструменты отладки.
+В строгом режиме любая попытка внесения изменений в состояние Vuex, кроме мутаций, будет выбрасывать ошибку. Это гарантирует, что все мутации состояния будут явно отслеживаться через инструменты отладки.
 
-### Разработка vs. production
+### Разработка vs production
 
-**Не используйте строгий режим в production!** Строгий режим запускает глубокое отслеживание за деревом состояния приложения в синхронном режиме для обнаружения несоответствующих мутаций, и это может быть затратным для производительности когда совершается большое количество мутаций. Убедитесь, что выключили этот режим в production чтобы избежать ухудшения производительности.
+**Не используйте строгий режим в production!** Строгий режим запускает глубокое отслеживание за деревом состояния приложения в синхронном режиме для обнаружения несоответствующих мутаций, и это может быть затратным для производительности, когда совершается большое количество мутаций. Убедитесь, что выключили этот режим в production чтобы избежать ухудшения производительности.
 
 Аналогично плагинам, при использовании инструментов сборки это можно сделать так:
 

+ 2 - 2
docs/ru/structure.md

@@ -2,11 +2,11 @@
 
 В действительности Vuex не накладывает каких-то значительных ограничений на используемую структуру кода. Однако, он требует соблюдения нескольких высокоуровневых принципов:
 
-1. Глобальное состояние приложения должно содержаться в централизованном хранилище;
+1. Глобальное состояние приложения должно содержаться в глобальном хранилище;
 
 2. Единственным механизмом изменения этого состояния являются **мутации**, являющиеся синхронными транзакциями;
 
-3. Асинхронные операции инкапсулируются в **действия**, или их комбинации.
+3. Асинхронные операции инкапсулируются в **действия** или их комбинации.
 
 Покуда вы следуете этим правилам, можно использовать любую структуру проекта. Если ваш файл хранилища становится слишком большим, просто начните выносить действия, мутации и геттеры в отдельные файлы.
 

+ 2 - 2
docs/ru/testing.md

@@ -49,7 +49,7 @@ describe('mutations', () => {
 
 ### Тестирование действий
 
-Действия тестировать несколько сложнее, поскольку они могут обращаться ко внешним API. При тестировании действий обычно приходится заниматься подделкой внешних объектов - например, вызовы к API можно вынести в отдельный сервис, и в рамках тестов этот сервис подменить поддельным. Для упрощения имитации зависимостей можно использовать webpack и [inject-loader](https://github.com/plasticine/inject-loader) для сборки файлов тестов.
+Действия тестировать несколько сложнее, поскольку они могут обращаться ко внешним API. При тестировании действий обычно приходится заниматься подделкой внешних объектов  например, вызовы к API можно вынести в отдельный сервис, и в рамках тестов этот сервис подменить поддельным. Для упрощения имитации зависимостей можно использовать webpack и [inject-loader](https://github.com/plasticine/inject-loader) для сборки файлов тестов.
 
 Пример тестирования асинхронного действия:
 
@@ -203,7 +203,7 @@ module.exports = {
 }
 ```
 
-Затем, в терминале:
+Затем в терминале:
 
 ``` bash
 webpack