瀏覽代碼

[zh-cn] synced from #b206933 to #bb76bfd (#993)

* [zh-cn] synced from #b206933 to #bb76bfd

* Update SUMMARY.md

* Update modules.md
勾三股四 7 年之前
父節點
當前提交
1234464dcd
共有 3 個文件被更改,包括 24 次插入8 次删除
  1. 1 4
      docs/zh-cn/SUMMARY.md
  2. 21 4
      docs/zh-cn/api.md
  3. 2 0
      docs/zh-cn/modules.md

+ 1 - 4
docs/zh-cn/SUMMARY.md

@@ -1,10 +1,7 @@
 # Vuex
 # Vuex
 
 
-<!--email_off-->
-> 注意:本文档针对的是 vuex@2.x。
-<!--/email_off-->
+> 注意:对于 TypeScript 用户来说 vuex@>= 3.0 依赖 vue@>=2.5,反之亦然。
 
 
-- [寻找 1.0 文档?](https://github.com/vuejs/vuex/tree/1.0/docs)
 - [更新记录](https://github.com/vuejs/vuex/releases)
 - [更新记录](https://github.com/vuejs/vuex/releases)
 - [安装](installation.md)
 - [安装](installation.md)
 - [Vuex 是什么?](intro.md)
 - [Vuex 是什么?](intro.md)

+ 21 - 4
docs/zh-cn/api.md

@@ -12,11 +12,11 @@ const store = new Vuex.Store({ ...options })
 
 
 - **state**
 - **state**
 
 
-  - 类型: `Object`
+  - 类型: `Object | Function`
 
 
-    Vuex store 实例的根 state 对象。
+    Vuex store 实例的根 state 对象。[详细介绍](state.md)
 
 
-    [详细介绍](state.md)
+    如果你传入返回一个对象的函数,其返回的对象会被用做根 state。这在你想要重用 state 对象,尤其是重用 module 来说非常有用。[详细介绍](modules.md#模块重用)
 
 
 - **mutations**
 - **mutations**
 
 
@@ -158,10 +158,27 @@ const store = new Vuex.Store({ ...options })
 
 
   通常用于插件。[详细介绍](plugins.md)
   通常用于插件。[详细介绍](plugins.md)
 
 
-- **`registerModule(path: string | Array<string>, module: Module)`**
+- **`subscribeAction(handler: Function)`**
+
+  > 2.5.0 新增
+
+  订阅 store 的 action。`handler` 会在每个 action 分发的时候调用并接收 action 描述和当前的 store 的 state 这两个参数:
+
+  ``` js
+  store.subscribeAction((action, state) => {
+    console.log(action.type)
+    console.log(action.payload)
+  })
+  ```
+
+  该功能常用于插件。[详细介绍](plugins.md)
+
+- **`registerModule(path: string | Array<string>, module: Module, options?: Object)`**
 
 
   注册一个动态模块。[详细介绍](modules.md#模块动态注册)
   注册一个动态模块。[详细介绍](modules.md#模块动态注册)
 
 
+  `options` 可以包含 `preserveState: true` 以允许保留之前的 state。用于服务端渲染。
+
 - **`unregisterModule(path: string | Array<string>)`**
 - **`unregisterModule(path: string | Array<string>)`**
 
 
   卸载一个动态模块。[详细介绍](modules.md#模块动态注册)
   卸载一个动态模块。[详细介绍](modules.md#模块动态注册)

+ 2 - 0
docs/zh-cn/modules.md

@@ -268,6 +268,8 @@ store.registerModule(['nested', 'myModule'], {
 
 
 你也可以使用 `store.unregisterModule(moduleName)` 来动态卸载模块。注意,你不能使用此方法卸载静态模块(即创建 store 时声明的模块)。
 你也可以使用 `store.unregisterModule(moduleName)` 来动态卸载模块。注意,你不能使用此方法卸载静态模块(即创建 store 时声明的模块)。
 
 
+在注册一个新 module 时,你很有可能想保留过去的 state,例如从一个服务端渲染的应用保留 state。你可以通过 `preserveState` 选项将其归档:`store.registerModule('a', module, { preserveState: true })`。
+
 ### 模块重用
 ### 模块重用
 
 
 有时我们可能需要创建一个模块的多个实例,例如:
 有时我们可能需要创建一个模块的多个实例,例如: