UNPKG

vuex-help

Version:

a utilies library reduce boilerplate for vuex

575 lines (326 loc) 73.7 kB
<!DOCTYPE HTML> <html lang="ru" > <head> <meta charset="UTF-8"> <meta content="text/html; charset=utf-8" http-equiv="Content-Type"> <title>Модули · Vuex</title> <meta http-equiv="X-UA-Compatible" content="IE=edge" /> <meta name="description" content=""> <meta name="generator" content="GitBook 3.2.3"> <link rel="stylesheet" href="../gitbook/style.css"> <link rel="stylesheet" href="../gitbook/gitbook-plugin-prism/prism.css"> <link rel="stylesheet" href="../gitbook/gitbook-plugin-search/search.css"> <link rel="stylesheet" href="../gitbook/gitbook-plugin-theme-vuejs/vue.css"> <meta name="HandheldFriendly" content="true"/> <meta name="viewport" content="width=device-width, initial-scale=1, user-scalable=no"> <meta name="apple-mobile-web-app-capable" content="yes"> <meta name="apple-mobile-web-app-status-bar-style" content="black"> <link rel="apple-touch-icon-precomposed" sizes="152x152" href="../gitbook/images/apple-touch-icon-precomposed-152.png"> <link rel="shortcut icon" href="../gitbook/images/favicon.ico" type="image/x-icon"> <link rel="next" href="structure.html" /> <link rel="prev" href="actions.html" /> </head> <body> <div class="book"> <div class="book-summary"> <div id="book-search-input" role="search"> <input type="text" placeholder="Введите условия поиска" /> </div> <nav role="navigation"> <script async type="text/javascript" src="//cdn.carbonads.com/carbon.js?zoneid=1673&serve=C6AILKT&placement=vuejs" id="_carbonads_js"></script> <ul class="summary"> <li class="chapter " data-level="1.1" data-path="./"> <a href="./"> Introduction </a> </li> <li class="chapter " data-level="1.2" > <a target="_blank" href="https://github.com/vuejs/vuex/releases"> История изменений </a> </li> <li class="chapter " data-level="1.3" data-path="installation.html"> <a href="installation.html"> Установка </a> </li> <li class="chapter " data-level="1.4" data-path="intro.html"> <a href="intro.html"> Что такое Vuex? </a> </li> <li class="chapter " data-level="1.5" data-path="getting-started.html"> <a href="getting-started.html"> Начало работы </a> </li> <li class="chapter " data-level="1.6" data-path="core-concepts.html"> <a href="core-concepts.html"> Основные понятия </a> <ul class="articles"> <li class="chapter " data-level="1.6.1" data-path="state.html"> <a href="state.html"> Состояние </a> </li> <li class="chapter " data-level="1.6.2" data-path="getters.html"> <a href="getters.html"> Геттеры </a> </li> <li class="chapter " data-level="1.6.3" data-path="mutations.html"> <a href="mutations.html"> Мутации </a> </li> <li class="chapter " data-level="1.6.4" data-path="actions.html"> <a href="actions.html"> Действия </a> </li> <li class="chapter active" data-level="1.6.5" data-path="modules.html"> <a href="modules.html"> Модули </a> </li> </ul> </li> <li class="chapter " data-level="1.7" data-path="structure.html"> <a href="structure.html"> Структура приложения </a> </li> <li class="chapter " data-level="1.8" data-path="plugins.html"> <a href="plugins.html"> Плагины </a> </li> <li class="chapter " data-level="1.9" data-path="strict.html"> <a href="strict.html"> Строгий режим (strict mode) </a> </li> <li class="chapter " data-level="1.10" data-path="forms.html"> <a href="forms.html"> Обработка форм </a> </li> <li class="chapter " data-level="1.11" data-path="testing.html"> <a href="testing.html"> Тестирование </a> </li> <li class="chapter " data-level="1.12" data-path="hot-reload.html"> <a href="hot-reload.html"> Горячая замена </a> </li> <li class="chapter " data-level="1.13" data-path="api.html"> <a href="api.html"> Справочник API </a> </li> <li class="divider"></li> <li> <a href="https://www.gitbook.com" target="blank" class="gitbook-link"> Опубликовано с помощью GitBook </a> </li> </ul> </nav> </div> <div class="book-body"> <div class="body-inner"> <div class="book-header" role="navigation"> <!-- Title --> <h1> <i class="fa fa-circle-o-notch fa-spin"></i> <a href="." >Модули</a> </h1> </div> <div class="page-wrapper" tabindex="-1" role="main"> <div class="page-inner"> <div id="book-search-results"> <div class="search-noresults"> <section class="normal markdown-section"> <h1 id="&#x43C;&#x43E;&#x434;&#x443;&#x43B;&#x438;">&#x41C;&#x43E;&#x434;&#x443;&#x43B;&#x438;</h1> <p>&#x418;&#x437;-&#x437;&#x430; &#x438;&#x441;&#x43F;&#x43E;&#x43B;&#x44C;&#x437;&#x43E;&#x432;&#x430;&#x43D;&#x438;&#x44F; &#x435;&#x434;&#x438;&#x43D;&#x43E;&#x433;&#x43E; &#x434;&#x435;&#x440;&#x435;&#x432;&#x430; &#x441;&#x43E;&#x441;&#x442;&#x43E;&#x44F;&#x43D;&#x438;&#x44F;, &#x432;&#x441;&#x435; &#x433;&#x43B;&#x43E;&#x431;&#x430;&#x43B;&#x44C;&#x43D;&#x44B;&#x435; &#x434;&#x430;&#x43D;&#x43D;&#x44B;&#x435; &#x43F;&#x440;&#x438;&#x43B;&#x43E;&#x436;&#x435;&#x43D;&#x438;&#x44F; &#x43E;&#x43A;&#x430;&#x437;&#x44B;&#x432;&#x430;&#x44E;&#x442;&#x441;&#x44F; &#x43F;&#x43E;&#x43C;&#x435;&#x449;&#x435;&#x43D;&#x44B; &#x432; &#x43E;&#x434;&#x438;&#x43D; &#x431;&#x43E;&#x43B;&#x44C;&#x448;&#x43E;&#x439; &#x43E;&#x431;&#x44A;&#x435;&#x43A;&#x442;. &#x41F;&#x43E; &#x43C;&#x435;&#x440;&#x435; &#x440;&#x43E;&#x441;&#x442;&#x430; &#x43F;&#x440;&#x438;&#x43B;&#x43E;&#x436;&#x435;&#x43D;&#x438;&#x44F;, &#x445;&#x440;&#x430;&#x43D;&#x438;&#x43B;&#x438;&#x449;&#x435; &#x43C;&#x43E;&#x436;&#x435;&#x442; &#x441;&#x443;&#x449;&#x435;&#x441;&#x442;&#x432;&#x435;&#x43D;&#x43D;&#x43E; &#x440;&#x430;&#x437;&#x434;&#x443;&#x442;&#x44C;&#x441;&#x44F;.</p> <p>&#x427;&#x442;&#x43E;&#x431;&#x44B; &#x43F;&#x43E;&#x43C;&#x43E;&#x447;&#x44C; &#x432; &#x44D;&#x442;&#x43E;&#x439; &#x431;&#x435;&#x434;&#x435;, Vuex &#x43F;&#x43E;&#x437;&#x432;&#x43E;&#x43B;&#x44F;&#x435;&#x442; &#x440;&#x430;&#x437;&#x434;&#x435;&#x43B;&#x44F;&#x442;&#x44C; &#x445;&#x440;&#x430;&#x43D;&#x438;&#x43B;&#x438;&#x449;&#x435; &#x43D;&#x430; <strong>&#x43C;&#x43E;&#x434;&#x443;&#x43B;&#x438;</strong>. &#x41A;&#x430;&#x436;&#x434;&#x44B;&#x439; &#x43C;&#x43E;&#x434;&#x443;&#x43B;&#x44C; &#x43C;&#x43E;&#x436;&#x435;&#x442; &#x441;&#x43E;&#x434;&#x435;&#x440;&#x436;&#x430;&#x442;&#x44C; &#x441;&#x43E;&#x431;&#x441;&#x442;&#x432;&#x435;&#x43D;&#x43D;&#x43E;&#x435; &#x441;&#x43E;&#x441;&#x442;&#x43E;&#x44F;&#x43D;&#x438;&#x435;, &#x43C;&#x443;&#x442;&#x430;&#x446;&#x438;&#x438;, &#x434;&#x435;&#x439;&#x441;&#x442;&#x432;&#x438;&#x44F;, &#x433;&#x435;&#x442;&#x442;&#x435;&#x440;&#x44B; &#x438; &#x434;&#x430;&#x436;&#x435; &#x432;&#x441;&#x442;&#x440;&#x43E;&#x435;&#x43D;&#x43D;&#x44B;&#x435; &#x43F;&#x43E;&#x434;&#x43C;&#x43E;&#x434;&#x443;&#x43B;&#x438; &#x2014; &#x441;&#x442;&#x440;&#x443;&#x43A;&#x442;&#x443;&#x440;&#x430; &#x444;&#x440;&#x430;&#x43A;&#x442;&#x430;&#x43B;&#x44C;&#x43D;&#x430;:</p> <pre class="language-"><code class="lang-js"><span class="token keyword">const</span> moduleA <span class="token operator">=</span> <span class="token punctuation">{</span> state<span class="token punctuation">:</span> <span class="token punctuation">{</span> <span class="token operator">...</span> <span class="token punctuation">}</span><span class="token punctuation">,</span> mutations<span class="token punctuation">:</span> <span class="token punctuation">{</span> <span class="token operator">...</span> <span class="token punctuation">}</span><span class="token punctuation">,</span> actions<span class="token punctuation">:</span> <span class="token punctuation">{</span> <span class="token operator">...</span> <span class="token punctuation">}</span><span class="token punctuation">,</span> getters<span class="token punctuation">:</span> <span class="token punctuation">{</span> <span class="token operator">...</span> <span class="token punctuation">}</span> <span class="token punctuation">}</span> <span class="token keyword">const</span> moduleB <span class="token operator">=</span> <span class="token punctuation">{</span> state<span class="token punctuation">:</span> <span class="token punctuation">{</span> <span class="token operator">...</span> <span class="token punctuation">}</span><span class="token punctuation">,</span> mutations<span class="token punctuation">:</span> <span class="token punctuation">{</span> <span class="token operator">...</span> <span class="token punctuation">}</span><span class="token punctuation">,</span> actions<span class="token punctuation">:</span> <span class="token punctuation">{</span> <span class="token operator">...</span> <span class="token punctuation">}</span> <span class="token punctuation">}</span> <span class="token keyword">const</span> store <span class="token operator">=</span> <span class="token keyword">new</span> <span class="token class-name">Vuex<span class="token punctuation">.</span>Store</span><span class="token punctuation">(</span><span class="token punctuation">{</span> modules<span class="token punctuation">:</span> <span class="token punctuation">{</span> a<span class="token punctuation">:</span> moduleA<span class="token punctuation">,</span> b<span class="token punctuation">:</span> moduleB <span class="token punctuation">}</span> <span class="token punctuation">}</span><span class="token punctuation">)</span> store<span class="token punctuation">.</span>state<span class="token punctuation">.</span>a <span class="token comment" spellcheck="true">// -&gt; &#x441;&#x43E;&#x441;&#x442;&#x43E;&#x44F;&#x43D;&#x438;&#x435; &#x43C;&#x43E;&#x434;&#x443;&#x43B;&#x44F; `moduleA`</span> store<span class="token punctuation">.</span>state<span class="token punctuation">.</span>b <span class="token comment" spellcheck="true">// -&gt; &#x441;&#x43E;&#x441;&#x442;&#x43E;&#x44F;&#x43D;&#x438;&#x435; &#x43C;&#x43E;&#x434;&#x443;&#x43B;&#x44F; `moduleB`</span> </code></pre> <h3 id="&#x43B;&#x43E;&#x43A;&#x430;&#x43B;&#x44C;&#x43D;&#x43E;&#x435;-&#x441;&#x43E;&#x441;&#x442;&#x43E;&#x44F;&#x43D;&#x438;&#x435;-&#x43C;&#x43E;&#x434;&#x443;&#x43B;&#x435;&#x439;">&#x41B;&#x43E;&#x43A;&#x430;&#x43B;&#x44C;&#x43D;&#x43E;&#x435; &#x441;&#x43E;&#x441;&#x442;&#x43E;&#x44F;&#x43D;&#x438;&#x435; &#x43C;&#x43E;&#x434;&#x443;&#x43B;&#x435;&#x439;</h3> <p>&#x41F;&#x435;&#x440;&#x432;&#x44B;&#x43C; &#x430;&#x440;&#x433;&#x443;&#x43C;&#x435;&#x43D;&#x442;&#x43E;&#x43C;, &#x43A;&#x43E;&#x442;&#x43E;&#x440;&#x44B;&#x439; &#x43F;&#x43E;&#x43B;&#x443;&#x447;&#x430;&#x44E;&#x442; &#x43C;&#x443;&#x442;&#x430;&#x446;&#x438;&#x438; &#x438; &#x433;&#x435;&#x442;&#x442;&#x435;&#x440;&#x44B;, &#x431;&#x443;&#x434;&#x435;&#x442; <strong>&#x43B;&#x43E;&#x43A;&#x430;&#x43B;&#x44C;&#x43D;&#x43E;&#x435; &#x441;&#x43E;&#x441;&#x442;&#x43E;&#x44F;&#x43D;&#x438;&#x435; &#x43C;&#x43E;&#x434;&#x443;&#x43B;&#x44F;</strong>.</p> <pre class="language-"><code class="lang-js"><span class="token keyword">const</span> moduleA <span class="token operator">=</span> <span class="token punctuation">{</span> state<span class="token punctuation">:</span> <span class="token punctuation">{</span> count<span class="token punctuation">:</span> <span class="token number">0</span> <span class="token punctuation">}</span><span class="token punctuation">,</span> mutations<span class="token punctuation">:</span> <span class="token punctuation">{</span> increment <span class="token punctuation">(</span>state<span class="token punctuation">)</span> <span class="token punctuation">{</span> <span class="token comment" spellcheck="true">// `state` &#x443;&#x43A;&#x430;&#x437;&#x44B;&#x432;&#x430;&#x435;&#x442; &#x43D;&#x430; &#x43B;&#x43E;&#x43A;&#x430;&#x43B;&#x44C;&#x43D;&#x43E;&#x435; &#x441;&#x43E;&#x441;&#x442;&#x43E;&#x44F;&#x43D;&#x438;&#x435; &#x43C;&#x43E;&#x434;&#x443;&#x43B;&#x44F;</span> state<span class="token punctuation">.</span>count<span class="token operator">++</span> <span class="token punctuation">}</span> <span class="token punctuation">}</span><span class="token punctuation">,</span> getters<span class="token punctuation">:</span> <span class="token punctuation">{</span> doubleCount <span class="token punctuation">(</span>state<span class="token punctuation">)</span> <span class="token punctuation">{</span> <span class="token keyword">return</span> state<span class="token punctuation">.</span>count <span class="token operator">*</span> <span class="token number">2</span> <span class="token punctuation">}</span> <span class="token punctuation">}</span> <span class="token punctuation">}</span> </code></pre> <p>&#x410;&#x43D;&#x430;&#x43B;&#x43E;&#x433;&#x438;&#x447;&#x43D;&#x43E;, <code>context.state</code> &#x432; &#x434;&#x435;&#x439;&#x441;&#x442;&#x432;&#x438;&#x44F;&#x445; &#x442;&#x430;&#x43A;&#x436;&#x435; &#x443;&#x43A;&#x430;&#x437;&#x44B;&#x432;&#x430;&#x435;&#x442; &#x43D;&#x430; &#x43B;&#x43E;&#x43A;&#x430;&#x43B;&#x44C;&#x43D;&#x43E;&#x435; &#x441;&#x43E;&#x441;&#x442;&#x43E;&#x44F;&#x43D;&#x438;&#x435; &#x43C;&#x43E;&#x434;&#x443;&#x43B;&#x44F;, &#x430; &#x43A;&#x43E;&#x440;&#x43D;&#x435;&#x432;&#x43E;&#x435; &#x2014; &#x434;&#x43E;&#x441;&#x442;&#x443;&#x43F;&#x43D;&#x43E; &#x432; <code>context.rootState</code>:</p> <pre class="language-"><code class="lang-js"><span class="token keyword">const</span> moduleA <span class="token operator">=</span> <span class="token punctuation">{</span> <span class="token comment" spellcheck="true">// ...</span> actions<span class="token punctuation">:</span> <span class="token punctuation">{</span> incrementIfOddOnRootSum <span class="token punctuation">(</span><span class="token punctuation">{</span> state<span class="token punctuation">,</span> commit<span class="token punctuation">,</span> rootState <span class="token punctuation">}</span><span class="token punctuation">)</span> <span class="token punctuation">{</span> <span class="token keyword">if</span> <span class="token punctuation">(</span><span class="token punctuation">(</span>state<span class="token punctuation">.</span>count <span class="token operator">+</span> rootState<span class="token punctuation">.</span>count<span class="token punctuation">)</span> <span class="token operator">%</span> <span class="token number">2</span> <span class="token operator">===</span> <span class="token number">1</span><span class="token punctuation">)</span> <span class="token punctuation">{</span> <span class="token function">commit</span><span class="token punctuation">(</span><span class="token string">&apos;increment&apos;</span><span class="token punctuation">)</span> <span class="token punctuation">}</span> <span class="token punctuation">}</span> <span class="token punctuation">}</span> <span class="token punctuation">}</span> </code></pre> <p>&#x41A;&#x440;&#x43E;&#x43C;&#x435; &#x442;&#x43E;&#x433;&#x43E;, &#x432; &#x433;&#x435;&#x442;&#x442;&#x435;&#x440;&#x44B; &#x43A;&#x43E;&#x440;&#x43D;&#x435;&#x432;&#x43E;&#x435; &#x441;&#x43E;&#x441;&#x442;&#x43E;&#x44F;&#x43D;&#x438;&#x435; &#x43F;&#x435;&#x440;&#x435;&#x434;&#x430;&#x451;&#x442;&#x441;&#x44F; 3-&#x43C; &#x43F;&#x430;&#x440;&#x430;&#x43C;&#x435;&#x442;&#x440;&#x43E;&#x43C;:</p> <pre class="language-"><code class="lang-js"><span class="token keyword">const</span> moduleA <span class="token operator">=</span> <span class="token punctuation">{</span> <span class="token comment" spellcheck="true">// ...</span> getters<span class="token punctuation">:</span> <span class="token punctuation">{</span> sumWithRootCount <span class="token punctuation">(</span>state<span class="token punctuation">,</span> getters<span class="token punctuation">,</span> rootState<span class="token punctuation">)</span> <span class="token punctuation">{</span> <span class="token keyword">return</span> state<span class="token punctuation">.</span>count <span class="token operator">+</span> rootState<span class="token punctuation">.</span>count <span class="token punctuation">}</span> <span class="token punctuation">}</span> <span class="token punctuation">}</span> </code></pre> <h3 id="&#x43F;&#x440;&#x43E;&#x441;&#x442;&#x440;&#x430;&#x43D;&#x441;&#x442;&#x432;&#x430;-&#x438;&#x43C;&#x451;&#x43D;">&#x41F;&#x440;&#x43E;&#x441;&#x442;&#x440;&#x430;&#x43D;&#x441;&#x442;&#x432;&#x430; &#x438;&#x43C;&#x451;&#x43D;</h3> <p>&#x41F;&#x43E; &#x443;&#x43C;&#x43E;&#x43B;&#x447;&#x430;&#x43D;&#x438;&#x44E; &#x434;&#x435;&#x439;&#x441;&#x442;&#x432;&#x438;&#x44F;, &#x43C;&#x443;&#x442;&#x430;&#x446;&#x438;&#x438; &#x438; &#x433;&#x435;&#x442;&#x442;&#x435;&#x440;&#x44B; &#x432;&#x43D;&#x443;&#x442;&#x440;&#x438; &#x43C;&#x43E;&#x434;&#x443;&#x43B;&#x435;&#x439; &#x440;&#x435;&#x433;&#x438;&#x441;&#x442;&#x440;&#x438;&#x440;&#x443;&#x44E;&#x442;&#x441;&#x44F; &#x432; <strong>&#x433;&#x43B;&#x43E;&#x431;&#x430;&#x43B;&#x44C;&#x43D;&#x43E;&#x43C; &#x43F;&#x440;&#x43E;&#x441;&#x442;&#x440;&#x430;&#x43D;&#x441;&#x442;&#x432;&#x435; &#x438;&#x43C;&#x451;&#x43D;</strong> &#x2014; &#x44D;&#x442;&#x43E; &#x43F;&#x43E;&#x437;&#x432;&#x43E;&#x43B;&#x44F;&#x435;&#x442; &#x43D;&#x435;&#x441;&#x43A;&#x43E;&#x43B;&#x44C;&#x43A;&#x438;&#x43C; &#x43C;&#x43E;&#x434;&#x443;&#x43B;&#x44F;&#x43C; &#x440;&#x435;&#x430;&#x433;&#x438;&#x440;&#x43E;&#x432;&#x430;&#x442;&#x44C; &#x43D;&#x430; &#x442;&#x43E;&#x442; &#x436;&#x435; &#x442;&#x438;&#x43F; &#x43C;&#x443;&#x442;&#x430;&#x446;&#x438;&#x439;/&#x434;&#x435;&#x439;&#x441;&#x442;&#x432;&#x438;&#x439;.</p> <p>&#x415;&#x441;&#x43B;&#x438; &#x432;&#x44B; &#x445;&#x43E;&#x442;&#x438;&#x442;&#x435; &#x441;&#x434;&#x435;&#x43B;&#x430;&#x442;&#x44C; &#x43C;&#x43E;&#x434;&#x443;&#x43B;&#x438; &#x431;&#x43E;&#x43B;&#x435;&#x435; &#x441;&#x430;&#x43C;&#x43E;&#x434;&#x43E;&#x441;&#x442;&#x430;&#x442;&#x43E;&#x447;&#x43D;&#x44B;&#x43C;&#x438; &#x438; &#x433;&#x43E;&#x442;&#x43E;&#x432;&#x44B;&#x43C;&#x438; &#x434;&#x43B;&#x44F; &#x43F;&#x435;&#x440;&#x435;&#x438;&#x441;&#x43F;&#x43E;&#x43B;&#x44C;&#x437;&#x43E;&#x432;&#x430;&#x43D;&#x438;&#x44F;, &#x432;&#x44B; &#x43C;&#x43E;&#x436;&#x435;&#x442;&#x435; &#x441;&#x43E;&#x437;&#x434;&#x430;&#x442;&#x44C; &#x435;&#x433;&#x43E; &#x441; &#x441;&#x43E;&#x431;&#x441;&#x442;&#x432;&#x435;&#x43D;&#x43D;&#x44B;&#x43C; &#x43F;&#x440;&#x43E;&#x441;&#x442;&#x440;&#x430;&#x43D;&#x441;&#x442;&#x432;&#x43E;&#x43C; &#x438;&#x43C;&#x451;&#x43D;, &#x443;&#x43A;&#x430;&#x437;&#x430;&#x432; &#x43E;&#x43F;&#x446;&#x438;&#x44E; <code>namespaced: true</code>. &#x41A;&#x43E;&#x433;&#x434;&#x430; &#x43C;&#x43E;&#x434;&#x443;&#x43B;&#x44C; &#x431;&#x443;&#x434;&#x435;&#x442; &#x437;&#x430;&#x440;&#x435;&#x433;&#x438;&#x441;&#x442;&#x440;&#x438;&#x440;&#x43E;&#x432;&#x430;&#x43D;, &#x432;&#x441;&#x435; &#x435;&#x433;&#x43E; &#x433;&#x435;&#x442;&#x442;&#x435;&#x440;&#x44B;, &#x434;&#x435;&#x439;&#x441;&#x442;&#x432;&#x438;&#x44F; &#x438; &#x43C;&#x443;&#x442;&#x430;&#x446;&#x438;&#x438; &#x431;&#x443;&#x434;&#x443;&#x442; &#x430;&#x432;&#x442;&#x43E;&#x43C;&#x430;&#x442;&#x438;&#x447;&#x435;&#x441;&#x43A;&#x438; &#x441;&#x432;&#x44F;&#x437;&#x430;&#x43D;&#x44B; &#x441; &#x44D;&#x442;&#x438;&#x43C; &#x43F;&#x440;&#x43E;&#x441;&#x442;&#x440;&#x430;&#x43D;&#x441;&#x442;&#x432;&#x43E;&#x43C; &#x438;&#x43C;&#x451;&#x43D;, &#x43E;&#x441;&#x43D;&#x43E;&#x432;&#x44B;&#x432;&#x430;&#x44F;&#x441;&#x44C; &#x43D;&#x430; &#x43F;&#x443;&#x442;&#x438; &#x43F;&#x43E; &#x43A;&#x43E;&#x442;&#x43E;&#x440;&#x43E;&#x43C;&#x443; &#x437;&#x430;&#x440;&#x435;&#x433;&#x438;&#x441;&#x442;&#x440;&#x438;&#x440;&#x43E;&#x432;&#x430;&#x43D; &#x43C;&#x43E;&#x434;&#x443;&#x43B;&#x44C;. &#x41D;&#x430;&#x43F;&#x440;&#x438;&#x43C;&#x435;&#x440;:</p> <pre class="language-"><code class="lang-js"><span class="token keyword">const</span> store <span class="token operator">=</span> <span class="token keyword">new</span> <span class="token class-name">Vuex<span class="token punctuation">.</span>Store</span><span class="token punctuation">(</span><span class="token punctuation">{</span> modules<span class="token punctuation">:</span> <span class="token punctuation">{</span> account<span class="token punctuation">:</span> <span class="token punctuation">{</span> namespaced<span class="token punctuation">:</span> <span class="token boolean">true</span><span class="token punctuation">,</span> <span class="token comment" spellcheck="true">// &#x441;&#x43E;&#x434;&#x435;&#x440;&#x436;&#x438;&#x43C;&#x43E;&#x435; &#x43C;&#x43E;&#x434;&#x443;&#x43B;&#x44F;</span> state<span class="token punctuation">:</span> <span class="token punctuation">{</span> <span class="token operator">...</span> <span class="token punctuation">}</span><span class="token punctuation">,</span> <span class="token comment" spellcheck="true">// &#x441;&#x43E;&#x441;&#x442;&#x43E;&#x44F;&#x43D;&#x438;&#x435; &#x43C;&#x43E;&#x434;&#x443;&#x43B;&#x44F; &#x430;&#x432;&#x442;&#x43E;&#x43C;&#x430;&#x442;&#x438;&#x447;&#x435;&#x441;&#x43A;&#x438; &#x432;&#x43B;&#x43E;&#x436;&#x435;&#x43D;&#x43E; &#x438; &#x43D;&#x435; &#x437;&#x430;&#x432;&#x438;&#x441;&#x438;&#x442; &#x43E;&#x442; &#x43E;&#x43F;&#x446;&#x438;&#x438; &#x43F;&#x440;&#x43E;&#x441;&#x442;&#x440;&#x430;&#x43D;&#x441;&#x442;&#x432;&#x430; &#x438;&#x43C;&#x451;&#x43D;</span> getters<span class="token punctuation">:</span> <span class="token punctuation">{</span> isAdmin <span class="token punctuation">(</span><span class="token punctuation">)</span> <span class="token punctuation">{</span> <span class="token operator">...</span> <span class="token punctuation">}</span> <span class="token comment" spellcheck="true">// -&gt; getters[&apos;account/isAdmin&apos;]</span> <span class="token punctuation">}</span><span class="token punctuation">,</span> actions<span class="token punctuation">:</span> <span class="token punctuation">{</span> login <span class="token punctuation">(</span><span class="token punctuation">)</span> <span class="token punctuation">{</span> <span class="token operator">...</span> <span class="token punctuation">}</span> <span class="token comment" spellcheck="true">// -&gt; dispatch(&apos;account/login&apos;)</span> <span class="token punctuation">}</span><span class="token punctuation">,</span> mutations<span class="token punctuation">:</span> <span class="token punctuation">{</span> login <span class="token punctuation">(</span><span class="token punctuation">)</span> <span class="token punctuation">{</span> <span class="token operator">...</span> <span class="token punctuation">}</span> <span class="token comment" spellcheck="true">// -&gt; commit(&apos;account/login&apos;)</span> <span class="token punctuation">}</span><span class="token punctuation">,</span> <span class="token comment" spellcheck="true">// &#x432;&#x43B;&#x43E;&#x436;&#x435;&#x43D;&#x43D;&#x44B;&#x435; &#x43C;&#x43E;&#x434;&#x443;&#x43B;&#x438;</span> modules<span class="token punctuation">:</span> <span class="token punctuation">{</span> <span class="token comment" spellcheck="true">// &#x43D;&#x430;&#x441;&#x43B;&#x435;&#x434;&#x443;&#x435;&#x442; &#x43F;&#x440;&#x43E;&#x441;&#x442;&#x440;&#x430;&#x43D;&#x441;&#x442;&#x432;&#x43E; &#x438;&#x43C;&#x451;&#x43D; &#x438;&#x437; &#x440;&#x43E;&#x434;&#x438;&#x442;&#x435;&#x43B;&#x44C;&#x441;&#x43A;&#x43E;&#x433;&#x43E; &#x43C;&#x43E;&#x434;&#x443;&#x43B;&#x44F;</span> myPage<span class="token punctuation">:</span> <span class="token punctuation">{</span> state<span class="token punctuation">:</span> <span class="token punctuation">{</span> <span class="token operator">...</span> <span class="token punctuation">}</span><span class="token punctuation">,</span> getters<span class="token punctuation">:</span> <span class="token punctuation">{</span> profile <span class="token punctuation">(</span><span class="token punctuation">)</span> <span class="token punctuation">{</span> <span class="token operator">...</span> <span class="token punctuation">}</span> <span class="token comment" spellcheck="true">// -&gt; getters[&apos;account/profile&apos;]</span> <span class="token punctuation">}</span> <span class="token punctuation">}</span><span class="token punctuation">,</span> <span class="token comment" spellcheck="true">// &#x431;&#x43E;&#x43B;&#x44C;&#x448;&#x430;&#x44F; &#x432;&#x43B;&#x43E;&#x436;&#x435;&#x43D;&#x43D;&#x43E;&#x441;&#x442;&#x44C; &#x441; &#x441;&#x43E;&#x431;&#x441;&#x442;&#x432;&#x435;&#x43D;&#x43D;&#x44B;&#x43C; &#x43F;&#x440;&#x43E;&#x441;&#x442;&#x440;&#x430;&#x43D;&#x441;&#x442;&#x432;&#x43E;&#x43C; &#x438;&#x43C;&#x451;&#x43D;</span> posts<span class="token punctuation">:</span> <span class="token punctuation">{</span> namespaced<span class="token punctuation">:</span> <span class="token boolean">true</span><span class="token punctuation">,</span> state<span class="token punctuation">:</span> <span class="token punctuation">{</span> <span class="token operator">...</span> <span class="token punctuation">}</span><span class="token punctuation">,</span> getters<span class="token punctuation">:</span> <span class="token punctuation">{</span> popular <span class="token punctuation">(</span><span class="token punctuation">)</span> <span class="token punctuation">{</span> <span class="token operator">...</span> <span class="token punctuation">}</span> <span class="token comment" spellcheck="true">// -&gt; getters[&apos;account/posts/popular&apos;]</span> <span class="token punctuation">}</span> <span class="token punctuation">}</span> <span class="token punctuation">}</span> <span class="token punctuation">}</span> <span class="token punctuation">}</span> <span class="token punctuation">}</span><span class="token punctuation">)</span> </code></pre> <p>&#x413;&#x435;&#x442;&#x442;&#x435;&#x440;&#x44B; &#x438; &#x434;&#x435;&#x439;&#x441;&#x442;&#x432;&#x438;&#x44F; &#x441; &#x441;&#x43E;&#x431;&#x441;&#x442;&#x432;&#x435;&#x43D;&#x43D;&#x44B;&#x43C; &#x43F;&#x440;&#x43E;&#x441;&#x442;&#x440;&#x430;&#x43D;&#x441;&#x442;&#x432;&#x43E;&#x43C; &#x438;&#x43C;&#x451;&#x43D; &#x431;&#x443;&#x434;&#x443;&#x442; &#x43F;&#x43E;&#x43B;&#x443;&#x447;&#x430;&#x442;&#x44C; &#x441;&#x432;&#x43E;&#x438; &#x43B;&#x43E;&#x43A;&#x430;&#x43B;&#x44C;&#x43D;&#x44B;&#x435; <code>getters</code>, <code>dispatch</code> &#x438; <code>commit</code>. &#x414;&#x440;&#x443;&#x433;&#x438;&#x43C;&#x438; &#x441;&#x43B;&#x43E;&#x432;&#x430;&#x43C;&#x438;, &#x432;&#x44B; &#x43C;&#x43E;&#x436;&#x435;&#x442;&#x435; &#x438;&#x441;&#x43F;&#x43E;&#x43B;&#x44C;&#x437;&#x43E;&#x432;&#x430;&#x442;&#x44C; &#x441;&#x43E;&#x434;&#x435;&#x440;&#x436;&#x438;&#x43C;&#x43E;&#x435; &#x43C;&#x43E;&#x434;&#x443;&#x43B;&#x44F; &#x431;&#x435;&#x437; &#x43D;&#x430;&#x43F;&#x438;&#x441;&#x430;&#x43D;&#x438;&#x44F; &#x43F;&#x440;&#x435;&#x444;&#x438;&#x43A;&#x441;&#x43E;&#x432; &#x432; &#x442;&#x43E;&#x43C; &#x436;&#x435; &#x43C;&#x43E;&#x434;&#x443;&#x43B;&#x435;. &#x41F;&#x435;&#x440;&#x435;&#x43A;&#x43B;&#x44E;&#x447;&#x435;&#x43D;&#x438;&#x44F; &#x43C;&#x435;&#x436;&#x434;&#x443; &#x43F;&#x440;&#x43E;&#x441;&#x442;&#x440;&#x430;&#x43D;&#x441;&#x442;&#x432;&#x430;&#x43C;&#x438; &#x438;&#x43C;&#x451;&#x43D; &#x43D;&#x435; &#x432;&#x43B;&#x438;&#x44F;&#x435;&#x442; &#x43D;&#x430; &#x43A;&#x43E;&#x434; &#x432;&#x43D;&#x443;&#x442;&#x440;&#x438; &#x43C;&#x43E;&#x434;&#x443;&#x43B;&#x44F;.</p> <h4 id="&#x434;&#x43E;&#x441;&#x442;&#x443;&#x43F;-&#x43A;-&#x433;&#x43B;&#x43E;&#x431;&#x430;&#x43B;&#x44C;&#x43D;&#x43E;&#x43C;&#x443;-&#x441;&#x43E;&#x434;&#x435;&#x440;&#x436;&#x438;&#x43C;&#x43E;&#x43C;&#x443;-&#x432;-&#x43C;&#x43E;&#x434;&#x443;&#x43B;&#x44F;&#x445;-&#x441;&#x43E;-&#x441;&#x432;&#x43E;&#x438;&#x43C;-&#x43F;&#x440;&#x43E;&#x441;&#x442;&#x440;&#x430;&#x43D;&#x441;&#x442;&#x432;&#x43E;&#x43C;-&#x438;&#x43C;&#x451;&#x43D;">&#x414;&#x43E;&#x441;&#x442;&#x443;&#x43F; &#x43A; &#x433;&#x43B;&#x43E;&#x431;&#x430;&#x43B;&#x44C;&#x43D;&#x43E;&#x43C;&#x443; &#x441;&#x43E;&#x434;&#x435;&#x440;&#x436;&#x438;&#x43C;&#x43E;&#x43C;&#x443; &#x432; &#x43C;&#x43E;&#x434;&#x443;&#x43B;&#x44F;&#x445; &#x441;&#x43E; &#x441;&#x432;&#x43E;&#x438;&#x43C; &#x43F;&#x440;&#x43E;&#x441;&#x442;&#x440;&#x430;&#x43D;&#x441;&#x442;&#x432;&#x43E;&#x43C; &#x438;&#x43C;&#x451;&#x43D;</h4> <p>&#x415;&#x441;&#x43B;&#x438; &#x432;&#x44B; &#x445;&#x43E;&#x442;&#x438;&#x442;&#x435; &#x438;&#x441;&#x43F;&#x43E;&#x43B;&#x44C;&#x437;&#x43E;&#x432;&#x430;&#x442;&#x44C; &#x433;&#x43B;&#x43E;&#x431;&#x430;&#x43B;&#x44C;&#x43D;&#x43E;&#x435; &#x441;&#x43E;&#x441;&#x442;&#x43E;&#x44F;&#x43D;&#x438;&#x435; &#x438; &#x433;&#x435;&#x442;&#x442;&#x435;&#x440;&#x44B;, <code>rootState</code> &#x438; <code>rootGetters</code> &#x43F;&#x435;&#x440;&#x435;&#x434;&#x430;&#x44E;&#x442;&#x441;&#x44F; 3-&#x43C; &#x438; 4-&#x43C; &#x430;&#x440;&#x433;&#x443;&#x43C;&#x435;&#x43D;&#x442;&#x430;&#x43C;&#x438; &#x432; &#x444;&#x443;&#x43D;&#x43A;&#x446;&#x438;&#x438; &#x433;&#x435;&#x442;&#x442;&#x435;&#x440;&#x43E;&#x432;, &#x430; &#x442;&#x430;&#x43A;&#x436;&#x435; &#x43A;&#x430;&#x43A; &#x441;&#x432;&#x43E;&#x439;&#x441;&#x442;&#x432;&#x430; &#x432; &#x43E;&#x431;&#x44A;&#x435;&#x43A;&#x442;&#x435; <code>context</code>, &#x43F;&#x435;&#x440;&#x435;&#x434;&#x430;&#x432;&#x430;&#x435;&#x43C;&#x43E;&#x43C; &#x432; &#x444;&#x443;&#x43D;&#x43A;&#x446;&#x438;&#x438; &#x434;&#x435;&#x439;&#x441;&#x442;&#x432;&#x438;&#x439;.</p> <p>&#x414;&#x43B;&#x44F; &#x437;&#x430;&#x43F;&#x443;&#x441;&#x43A;&#x430; &#x434;&#x435;&#x439;&#x441;&#x442;&#x432;&#x438;&#x439; &#x438;&#x43B;&#x438; &#x441;&#x43E;&#x432;&#x435;&#x440;&#x448;&#x435;&#x43D;&#x438;&#x44F; &#x43C;&#x443;&#x442;&#x430;&#x446;&#x438;&#x439; &#x432; &#x433;&#x43B;&#x43E;&#x431;&#x430;&#x43B;&#x44C;&#x43D;&#x43E;&#x43C; &#x43F;&#x440;&#x43E;&#x441;&#x442;&#x440;&#x430;&#x43D;&#x441;&#x442;&#x432;&#x435; &#x438;&#x43C;&#x451;&#x43D; &#x43D;&#x443;&#x436;&#x43D;&#x43E; &#x434;&#x43E;&#x431;&#x430;&#x432;&#x438;&#x442;&#x44C; <code>{ root: true }</code> 3-&#x43C; &#x430;&#x440;&#x433;&#x443;&#x43C;&#x435;&#x43D;&#x442;&#x43E;&#x43C; &#x432; <code>dispatch</code> &#x438; <code>commit</code>.</p> <pre class="language-"><code class="lang-js">modules<span class="token punctuation">:</span> <span class="token punctuation">{</span> foo<span class="token punctuation">:</span> <span class="token punctuation">{</span> namespaced<span class="token punctuation">:</span> <span class="token boolean">true</span><span class="token punctuation">,</span> getters<span class="token punctuation">:</span> <span class="token punctuation">{</span> <span class="token comment" spellcheck="true">// `getters` &#x43E;&#x433;&#x440;&#x430;&#x43D;&#x438;&#x447;&#x435;&#x43D;&#x44B; &#x433;&#x435;&#x442;&#x442;&#x435;&#x440;&#x430;&#x43C;&#x438; &#x434;&#x430;&#x43D;&#x43D;&#x43E;&#x433;&#x43E; &#x43C;&#x43E;&#x434;&#x443;&#x43B;&#x44F;</span> <span class="token comment" spellcheck="true">// &#x432;&#x44B; &#x43C;&#x43E;&#x436;&#x435;&#x442;&#x435; &#x438;&#x441;&#x43F;&#x43E;&#x43B;&#x44C;&#x437;&#x43E;&#x432;&#x430;&#x442;&#x44C; rootGetters &#x438;&#x437; 4-&#x433;&#x43E; &#x430;&#x440;&#x433;&#x443;&#x43C;&#x435;&#x43D;&#x442;&#x430; &#x433;&#x435;&#x442;&#x442;&#x435;&#x440;&#x43E;&#x432;</span> someGetter <span class="token punctuation">(</span>state<span class="token punctuation">,</span> getters<span class="token punctuation">,</span> rootState<span class="token punctuation">,</span> rootGetters<span class="token punctuation">)</span> <span class="token punctuation">{</span> getters<span class="token punctuation">.</span>someOtherGetter <span class="token comment" spellcheck="true">// -&gt; &apos;foo/someOtherGetter&apos;</span> rootGetters<span class="token punctuation">.</span>someOtherGetter <span class="token comment" spellcheck="true">// -&gt; &apos;someOtherGetter&apos;</span> <span class="token punctuation">}</span><span class="token punctuation">,</span> someOtherGetter<span class="token punctuation">:</span> state <span class="token operator">=</span><span class="token operator">&gt;</span> <span class="token punctuation">{</span> <span class="token operator">...</span> <span class="token punctuation">}</span> <span class="token punctuation">}</span><span class="token punctuation">,</span> actions<span class="token punctuation">:</span> <span class="token punctuation">{</span> <span class="token comment" spellcheck="true">// dispatch &#x438; commit &#x442;&#x430;&#x43A;&#x436;&#x435; &#x43E;&#x433;&#x440;&#x430;&#x43D;&#x438;&#x447;&#x435;&#x43D;&#x44B; &#x434;&#x430;&#x43D;&#x43D;&#x44B;&#x43C; &#x43C;&#x43E;&#x434;&#x443;&#x43B;&#x435;&#x43C;</span> <span class="token comment" spellcheck="true">// &#x43E;&#x43D;&#x438; &#x43F;&#x440;&#x438;&#x43D;&#x438;&#x43C;&#x430;&#x44E;&#x442; &#x43E;&#x43F;&#x446;&#x438;&#x44E; `root` &#x434;&#x43B;&#x44F; &#x432;&#x44B;&#x437;&#x43E;&#x432;&#x430; &#x432; &#x433;&#x43B;&#x43E;&#x431;&#x430;&#x43B;&#x44C;&#x43D;&#x43E;&#x43C; &#x43F;&#x440;&#x43E;&#x441;&#x442;&#x440;&#x430;&#x43D;&#x441;&#x442;&#x432;&#x435; &#x438;&#x43C;&#x451;&#x43D;</span> someAction <span class="token punctuation">(</span><span class="token punctuation">{</span> dispatch<span class="token punctuation">,</span> commit<span class="token punctuation">,</span> getters<span class="token punctuation">,</span> rootGetters <span class="token punctuation">}</span><span class="token punctuation">)</span> <span class="token punctuation">{</span> getters<span class="token punctuation">.</span>someGetter <span class="token comment" spellcheck="true">// -&gt; &apos;foo/someGetter&apos;</span> rootGetters<span class="token punctuation">.</span>someGetter <span class="token comment" spellcheck="true">// -&gt; &apos;someGetter&apos;</span> <span class="token function">dispatch</span><span class="token punctuation">(</span><span class="token string">&apos;someOtherAction&apos;</span><span class="token punctuation">)</span> <span class="token comment" spellcheck="true">// -&gt; &apos;foo/someOtherAction&apos;</span> <span class="token function">dispatch</span><span class="token punctuation">(</span><span class="token string">&apos;someOtherAction&apos;</span><span class="token punctuation">,</span> <span class="token keyword">null</span><span class="token punctuation">,</span> <span class="token punctuation">{</span> root<span class="token punctuation">:</span> <span class="token boolean">true</span> <span class="token punctuation">}</span><span class="token punctuation">)</span> <span class="token comment" spellcheck="true">// -&gt; &apos;someOtherAction&apos;</span> <span class="token function">commit</span><span class="token punctuation">(</span><span class="token string">&apos;someMutation&apos;</span><span class="token punctuation">)</span> <span class="token comment" spellcheck="true">// -&gt; &apos;foo/someMutation&apos;</span> <span class="token function">commit</span><span class="token punctuation">(</span><span class="token string">&apos;someMutation&apos;</span><span class="token punctuation">,</span> <span class="token keyword">null</span><span class="token punctuation">,</span> <span class="token punctuation">{</span> root<span class="token punctuation">:</span> <span class="token boolean">true</span> <span class="token punctuation">}</span><span class="token punctuation">)</span> <span class="token comment" spellcheck="true">// -&gt; &apos;someMutation&apos;</span> <span class="token punctuation">}</span><span class="token punctuation">,</span> someOtherAction <span class="token punctuation">(</span>ctx<span class="token punctuation">,</span> payload<span class="token punctuation">)</span> <span class="token punctuation">{</span> <span class="token operator">...</span> <span class="token punctuation">}</span> <span class="token punctuation">}</span> <span class="token punctuation">}</span> <span class="token punctuation">}</span> </code></pre> <h4 id="&#x43F;&#x43E;&#x434;&#x43A;&#x43B;&#x44E;&#x447;&#x435;&#x43D;&#x438;&#x435;-&#x441;-&#x43F;&#x43E;&#x43C;&#x43E;&#x449;&#x44C;&#x44E;-&#x432;&#x441;&#x43F;&#x43E;&#x43C;&#x43E;&#x433;&#x430;&#x442;&#x435;&#x43B;&#x44C;&#x43D;&#x44B;&#x445;-&#x444;&#x443;&#x43D;&#x43A;&#x446;&#x438;&#x439;-&#x43A;-&#x43F;&#x440;&#x43E;&#x441;&#x442;&#x440;&#x430;&#x43D;&#x441;&#x442;&#x432;&#x443;-&#x438;&#x43C;&#x451;&#x43D;">&#x41F;&#x43E;&#x434;&#x43A;&#x43B;&#x44E;&#x447;&#x435;&#x43D;&#x438;&#x435; &#x441; &#x43F;&#x43E;&#x43C;&#x43E;&#x449;&#x44C;&#x44E; &#x432;&#x441;&#x43F;&#x43E;&#x43C;&#x43E;&#x433;&#x430;&#x442;&#x435;&#x43B;&#x44C;&#x43D;&#x44B;&#x445; &#x444;&#x443;&#x43D;&#x43A;&#x446;&#x438;&#x439; &#x43A; &#x43F;&#x440;&#x43E;&#x441;&#x442;&#x440;&#x430;&#x43D;&#x441;&#x442;&#x432;&#x443; &#x438;&#x43C;&#x451;&#x43D;</h4> <p>&#x41F;&#x43E;&#x434;&#x43A;&#x43B;&#x44E;&#x447;&#x435;&#x43D;&#x438;&#x435; &#x43C;&#x43E;&#x434;&#x443;&#x43B;&#x44F; &#x441;&#x43E; &#x441;&#x432;&#x43E;&#x438;&#x43C; &#x43F;&#x440;&#x43E;&#x441;&#x442;&#x440;&#x430;&#x43D;&#x441;&#x442;&#x432;&#x43E;&#x43C; &#x438;&#x43C;&#x451;&#x43D; &#x43A; &#x43A;&#x43E;&#x43C;&#x43F;&#x43E;&#x43D;&#x435;&#x43D;&#x442;&#x430;&#x43C; &#x441; &#x43F;&#x43E;&#x43C;&#x43E;&#x449;&#x44C;&#x44E; &#x432;&#x441;&#x43F;&#x43E;&#x43C;&#x43E;&#x433;&#x430;&#x442;&#x435;&#x43B;&#x44C;&#x43D;&#x44B;&#x445; &#x444;&#x443;&#x43D;&#x43A;&#x446;&#x438;&#x439; <code>mapState</code>, <code>mapGetters</code>, <code>mapActions</code> &#x438; <code>mapMutations</code> &#x44D;&#x442;&#x43E; &#x43C;&#x43E;&#x436;&#x435;&#x442; &#x432;&#x44B;&#x433;&#x43B;&#x44F;&#x434;&#x435;&#x442;&#x44C; &#x43F;&#x43E;&#x434;&#x43E;&#x431;&#x43D;&#x44B;&#x43C; &#x43E;&#x431;&#x440;&#x430;&#x437;&#x43E;&#x43C;:</p> <pre class="language-"><code class="lang-js">computed<span class="token punctuation">:</span> <span class="token punctuation">{</span> <span class="token operator">...</span><span class="token function">mapState</span><span class="token punctuation">(</span><span class="token punctuation">{</span> a<span class="token punctuation">:</span> state <span class="token operator">=</span><span class="token operator">&gt;</span> state<span class="token punctuation">.</span>some<span class="token punctuation">.</span>nested<span class="token punctuation">.</span>module<span class="token punctuation">.</span>a<span class="token punctuation">,</span> b<span class="token punctuation">:</span> state <span class="token operator">=</span><span class="token operator">&gt;</span> state<span class="token punctuation">.</span>some<span class="token punctuation">.</span>nested<span class="token punctuation">.</span>module<span class="token punctuation">.</span>b <span class="token punctuation">}</span><span class="token punctuation">)</span> <span class="token punctuation">}</span><span class="token punctuation">,</span> methods<span class="token punctuation">:</span> <span class="token punctuation">{</span> <span class="token operator">...</span><span class="token function">mapActions</span><span class="token punctuation">(</span><span class="token punctuation">[</span> <span class="token string">&apos;some/nested/module/foo&apos;</span><span class="token punctuation">,</span> <span class="token string">&apos;some/nested/module/bar&apos;</span> <span class="token punctuation">]</span><span class="token punctuation">)</span> <span class="token punctuation">}</span> </code></pre> <p>&#x412; &#x442;&#x430;&#x43A;&#x438;&#x445; &#x441;&#x43B;&#x443;&#x447;&#x430;&#x44F;&#x445; &#x432;&#x44B; &#x43C;&#x43E;&#x436;&#x435;&#x442;&#x435; &#x43F;&#x435;&#x440;&#x435;&#x434;&#x430;&#x442;&#x44C; &#x441;&#x442;&#x440;&#x43E;&#x43A;&#x443; &#x441; &#x43F;&#x440;&#x43E;&#x441;&#x442;&#x440;&#x430;&#x43D;&#x441;&#x442;&#x432;&#x43E;&#x43C; &#x438;&#x43C;&#x451;&#x43D; &#x432; &#x43A;&#x430;&#x447;&#x435;&#x441;&#x442;&#x432;&#x435; &#x43F;&#x435;&#x440;&#x432;&#x43E;&#x433;&#x43E; &#x430;&#x440;&#x433;&#x443;&#x43C;&#x435;&#x43D;&#x442;&#x430; &#x43A; &#x432;&#x441;&#x43F;&#x43E;&#x43C;&#x43E;&#x433;&#x430;&#x442;&#x435;&#x43B;&#x44C;&#x43D;&#x44B;&#x43C; &#x444;&#x443;&#x43D;&#x43A;&#x446;&#x438;&#x44F;&#x43C;, &#x442;&#x43E;&#x433;&#x434;&#x430; &#x432;&#x441;&#x435; &#x43F;&#x440;&#x438;&#x432;&#x44F;&#x437;&#x43A;&#x438; &#x431;&#x443;&#x434;&#x443;&#x442; &#x432;&#x44B;&#x43F;&#x43E;&#x43B;&#x43D;&#x435;&#x43D;&#x44B; &#x432; &#x43A;&#x43E;&#x43D;&#x442;&#x435;&#x43A;&#x441;&#x442;&#x435; &#x44D;&#x442;&#x43E;&#x433;&#x43E; &#x43C;&#x43E;&#x434;&#x443;&#x43B;&#x44F;. &#x41F;&#x440;&#x438;&#x43C;&#x435;&#x440; &#x432;&#x44B;&#x448;&#x435; &#x43C;&#x43E;&#x436;&#x43D;&#x43E; &#x443;&#x43F;&#x440;&#x43E;&#x441;&#x442;&#x438;&#x442;&#x44C; &#x434;&#x43E;:</p> <pre class="language-"><code class="lang-js">computed<span class="token punctuation">:</span> <span class="token punctuation">{</span> <span class="token operator">...</span><span class="token function">mapState</span><span class="token punctuation">(</span><span class="token string">&apos;some/nested/module&apos;</span><span class="token punctuation">,</span> <span class="token punctuation">{</span> a<span class="token punctuation">:</span> state <span class="token operator">=</span><span class="token operator">&gt;</span> state<span class="token punctuation">.</span>a<span class="token punctuation">,</span> b<span class="token punctuation">:</span> state <span class="token operator">=</span><span class="token operator">&gt;</span> state<span class="token punctuation">.</span>b <span class="token punctuation">}</span><span class="token punctuation">)</span> <span class="token punctuation">}</span><span class="token punctuation">,</span> methods<span class="token punctuation">:</span> <span class="token punctuation">{</span> <span class="token operator">...</span><span class="token function">mapActions</span><span class="token punctuation">(</span><span class="token string">&apos;some/nested/module&apos;</span><span class="token punctuation">,</span> <span class="token punctuation">[</span> <span class="token string">&apos;foo&apos;</span><span class="token punctuation">,</span> <span class="token string">&apos;bar&apos;</span> <span class="token punctuation">]</span><span class="token punctuation">)</span> <span class="token punctuation">}</span> </code></pre> <p>&#x41A;&#x440;&#x43E;&#x43C;&#x435; &#x442;&#x43E;&#x433;&#x43E;, &#x432;&#x44B; &#x43C;&#x43E;&#x436;&#x435;&#x442;&#x435; &#x441;&#x43E;&#x437;&#x434;&#x430;&#x442;&#x44C; &#x432;&#x441;&#x43F;&#x43E;&#x43C;&#x43E;&#x433;&#x430;&#x442;&#x435;&#x43B;&#x44C;&#x43D;&#x44B;&#x435; &#x444;&#x443;&#x43D;&#x43A;&#x446;&#x438;&#x438; &#x441; &#x43F;&#x43E;&#x43C;&#x43E;&#x449;&#x44C;&#x44E; <code>createNamespacedHelpers</code>. &#x41E;&#x43D;&#x430; &#x432;&#x43E;&#x437;&#x432;&#x440;&#x430;&#x449;&#x430;&#x435;&#x442; &#x43E;&#x431;&#x44A;&#x435;&#x43A;&#x442;, &#x432; &#x43A;&#x43E;&#x442;&#x43E;&#x440;&#x43E;&#x43C; &#x432;&#x441;&#x435; &#x432;&#x441;&#x43F;&#x43E;&#x43C;&#x43E;&#x433;&#x430;&#x442;&#x435;&#x43B;&#x44C;&#x43D;&#x44B;&#x435; &#x444;&#x443;&#x43D;&#x43A;&#x446;&#x438;&#x438; &#x434;&#x43B;&#x44F; &#x441;&#x432;&#x44F;&#x437;&#x44B;&#x432;&#x430;&#x43D;&#x438;&#x44F; &#x441; &#x43A;&#x43E;&#x43C;&#x43F;&#x43E;&#x43D;&#x435;&#x43D;&#x442;&#x430;&#x43C;&#x438; &#x431;&#x443;&#x434;&#x443;&#x442; &#x443;&#x43A;&#x430;&#x437;&#x44B;&#x432;&#x430;&#x442;&#x44C; &#x43D;&#x430; &#x43F;&#x435;&#x440;&#x435;&#x434;&#x430;&#x43D;&#x43D;&#x43E;&#x435; &#x43F;&#x440;&#x43E;&#x441;&#x442;&#x440;&#x430;&#x43D;&#x441;&#x442;&#x432;&#x43E; &#x438;&#x43C;&#x451;&#x43D;:</p> <pre class="language-"><code class="lang-js"><span class="token keyword">import</span> <span class="token punctuation">{</span> createNamespacedHelpers <span class="token punctuation">}</span> <span class="token keyword">from</span> <span class="token string">&apos;vuex&apos;</span> <span class="token keyword">const</span> <span class="token punctuation">{</span> mapState<span class="token punctuation">,</span> mapActions <span class="token punctuation">}</span> <span class="token operator">=</span> <span class="token function">createNamespacedHelpers</span><span class="token punctuation">(</span><span class="token string">&apos;some/nested/module&apos;</span><span class="token punctuation">)</span> <span class="token keyword">export</span> <span class="token keyword">default</span> <span class="token punctuation">{</span> computed<span class="token punctuation">:</span> <span class="token punctuation">{</span> <span class="token comment" spellcheck="true">// &#x431;&#x443;&#x434;&#x435;&#x442; &#x443;&#x43A;&#x430;&#x437;&#x44B;&#x432;&#x430;&#x442;&#x44C; &#x43D;&#x430; `some/nested/module`</span> <span class="token operator">...</span><span class="token function">mapState</span><span class="token punctuation">(</span><span class="token punctuation">{</span> a<span class="token punctuation">:</span> state <span class="token operator">=</span><span class="token operator">&gt;</span> state<span class="token punctuation">.</span>a<span class="token punctuation">,</span> b<span class="token punctuation">:</span> state <span class="token operator">=</span><span class="token operator">&gt;</span> state<span class="token punctuation">.</span>b <span class="token punctuation">}</span><span class="token punctuation">)</span> <span class="token punctuation">}</span><span class="token punctuation">,</span> methods<span class="token punctuation">:</span> <span class="token punctuation">{</span> <span class="token comment" spellcheck="true">// &#x431;&#x443;&#x434;&#x435;&#x442; &#x443;&#x43A;&#x430;&#x437;&#x44B;&#x432;&#x430;&#x442;&#x44C; &#x43D;&#x430; `some/nested/module`</span> <span class="token operator">...</span><span class="token function">mapActions</span><span class="token punctuation">(</span><span class="token punctuation">[</span> <span class="token string">&apos;foo&apos;</span><span class="token punctuation">,</span> <span class="token string">&apos;bar&apos;</span> <span class="token punctuation">]</span><s