Skip to content

Commit eb52dfa

Browse files
authored
docs: fix heading level (#2075)
1 parent d05b8cf commit eb52dfa

File tree

12 files changed

+39
-39
lines changed

12 files changed

+39
-39
lines changed

docs/zh/guide/actions.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@ actions: {
3939
}
4040
```
4141

42-
### 分发 Action
42+
## 分发 Action
4343

4444
Action 通过 `store.dispatch` 方法触发:
4545

@@ -97,7 +97,7 @@ actions: {
9797

9898
注意我们正在进行一系列的异步操作,并且通过提交 mutation 来记录 action 产生的副作用(即状态变更)。
9999

100-
### 在组件中分发 Action
100+
## 在组件中分发 Action
101101

102102
你在组件中使用 `this.$store.dispatch('xxx')` 分发 action,或者使用 `mapActions` 辅助函数将组件的 methods 映射为 `store.dispatch` 调用(需要先在根节点注入 `store`):
103103

@@ -120,7 +120,7 @@ export default {
120120
}
121121
```
122122

123-
### 组合 Action
123+
## 组合 Action
124124

125125
Action 通常是异步的,那么如何知道 action 什么时候结束呢?更重要的是,我们如何才能组合多个 action,以处理更加复杂的异步流程?
126126

docs/zh/guide/forms.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,7 @@ mutations: {
4040
}
4141
```
4242

43-
### 双向绑定的计算属性
43+
## 双向绑定的计算属性
4444

4545
必须承认,这样做比简单地使用“`v-model` + 局部状态”要啰嗦得多,并且也损失了一些 `v-model` 中很有用的特性。另一个方法是使用带有 setter 的双向绑定计算属性:
4646

docs/zh/guide/getters.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@ const store = createStore({
3838
})
3939
```
4040

41-
### 通过属性访问
41+
## 通过属性访问
4242

4343
Getter 会暴露为 `store.getters` 对象,你可以以属性的形式访问这些值:
4444

@@ -73,7 +73,7 @@ computed: {
7373

7474
注意,getter 在通过属性访问时是作为 Vue 的响应式系统的一部分缓存其中的。
7575

76-
### 通过方法访问
76+
## 通过方法访问
7777

7878
你也可以通过让 getter 返回一个函数,来实现给 getter 传参。在你对 store 里的数组进行查询时非常有用。
7979

@@ -92,7 +92,7 @@ store.getters.getTodoById(2) // -> { id: 2, text: '...', done: false }
9292

9393
注意,getter 在通过方法访问时,每次都会去进行调用,而不会缓存结果。
9494

95-
### `mapGetters` 辅助函数
95+
## `mapGetters` 辅助函数
9696

9797
`mapGetters` 辅助函数仅仅是将 store 中的 getter 映射到局部计算属性:
9898

docs/zh/guide/index.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88

99
2. 你不能直接改变 store 中的状态。改变 store 中的状态的唯一途径就是显式地**提交 (commit) mutation**。这样使得我们可以方便地跟踪每一个状态的变化,从而让我们能够实现一些工具帮助我们更好地了解我们的应用。
1010

11-
### 最简单的 Store
11+
## 最简单的 Store
1212

1313
:::tip 提示
1414
我们将在后续的文档示例代码中使用 ES2015 语法。如果你还没能掌握 ES2015,[你得抓紧了](https://babeljs.io/docs/learn-es2015/)

docs/zh/guide/modules.md

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@ store.state.a // -> moduleA 的状态
3131
store.state.b // -> moduleB 的状态
3232
```
3333

34-
### 模块的局部状态
34+
## 模块的局部状态
3535

3636
对于模块内部的 mutation 和 getter,接收的第一个参数是**模块的局部状态对象**
3737

@@ -83,7 +83,7 @@ const moduleA = {
8383
}
8484
```
8585

86-
### 命名空间
86+
## 命名空间
8787

8888
默认情况下,模块内部的 action 和 mutation 仍然是注册在**全局命名空间**的——这样使得多个模块能够对同一个 action 或 mutation 作出响应。Getter 同样也默认注册在全局命名空间,但是目前这并非出于功能上的目的(仅仅是维持现状来避免非兼容性变更)。必须注意,不要在不同的、无命名空间的模块中定义两个相同的 getter 从而导致错误。
8989

@@ -134,7 +134,7 @@ const store = createStore({
134134

135135
启用了命名空间的 getter 和 action 会收到局部化的 `getter``dispatch``commit`。换言之,你在使用模块内容(module assets)时不需要在同一模块内额外添加空间名前缀。更改 `namespaced` 属性后不需要修改模块内的代码。
136136

137-
#### 在带命名空间的模块内访问全局内容(Global Assets)
137+
### 在带命名空间的模块内访问全局内容(Global Assets)
138138

139139
如果你希望使用全局 state 和 getter,`rootState``rootGetters` 会作为第三和第四参数传入 getter,也会通过 `context` 对象的属性传入 action。
140140

@@ -174,7 +174,7 @@ modules: {
174174
}
175175
```
176176

177-
#### 在带命名空间的模块注册全局 action
177+
### 在带命名空间的模块注册全局 action
178178

179179
若需要在带命名空间的模块注册全局 action,你可添加 `root: true`,并将这个 action 的定义放在函数 `handler` 中。例如:
180180

@@ -200,7 +200,7 @@ modules: {
200200
}
201201
```
202202

203-
#### 带命名空间的绑定函数
203+
### 带命名空间的绑定函数
204204

205205
当使用 `mapState``mapGetters``mapActions``mapMutations` 这些函数来绑定带命名空间的模块时,写起来可能比较繁琐:
206206

@@ -261,7 +261,7 @@ export default {
261261
}
262262
```
263263

264-
#### 给插件开发者的注意事项
264+
### 给插件开发者的注意事项
265265

266266
如果你开发的[插件(Plugin)](plugins.md)提供了模块并允许用户将其添加到 Vuex store,可能需要考虑模块的空间名称问题。对于这种情况,你可以通过插件的参数对象来允许用户指定空间名称:
267267

@@ -277,7 +277,7 @@ export function createPlugin (options = {}) {
277277
}
278278
```
279279

280-
### 模块动态注册
280+
## 模块动态注册
281281

282282
在 store 创建**之后**,你可以使用 `store.registerModule` 方法注册模块:
283283

@@ -304,13 +304,13 @@ store.registerModule(['nested', 'myModule'], {
304304

305305
注意,你可以通过 `store.hasModule(moduleName)` 方法检查该模块是否已经被注册到 store。需要记住的是,嵌套模块应该以数组形式传递给 `registerModule``hasModule`,而不是以路径字符串的形式传递给 module。
306306

307-
#### 保留 state
307+
### 保留 state
308308

309309
在注册一个新 module 时,你很有可能想保留过去的 state,例如从一个服务端渲染的应用保留 state。你可以通过 `preserveState` 选项将其归档:`store.registerModule('a', module, { preserveState: true })`
310310

311311
当你设置 `preserveState: true` 时,该模块会被注册,action、mutation 和 getter 会被添加到 store 中,但是 state 不会。这里假设 store 的 state 已经包含了这个 module 的 state 并且你不希望将其覆写。
312312

313-
### 模块重用
313+
## 模块重用
314314

315315
有时我们可能需要创建一个模块的多个实例,例如:
316316

docs/zh/guide/mutations.md

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ const store = createStore({
2424
store.commit('increment')
2525
```
2626

27-
### 提交载荷(Payload)
27+
## 提交载荷(Payload)
2828

2929
你可以向 `store.commit` 传入额外的参数,即 mutation 的**载荷(payload)**
3030

@@ -57,7 +57,7 @@ store.commit('increment', {
5757
})
5858
```
5959

60-
### 对象风格的提交方式
60+
## 对象风格的提交方式
6161

6262
提交 mutation 的另一种方式是直接使用包含 `type` 属性的对象:
6363

@@ -78,7 +78,7 @@ mutations: {
7878
}
7979
```
8080

81-
### 使用常量替代 Mutation 事件类型
81+
## 使用常量替代 Mutation 事件类型
8282

8383
使用常量替代 mutation 事件类型在各种 Flux 实现中是很常见的模式。这样可以使 linter 之类的工具发挥作用,同时把这些常量放在单独的文件中可以让你的代码合作者对整个 app 包含的 mutation 一目了然:
8484

@@ -105,7 +105,7 @@ const store = createStore({
105105

106106
用不用常量取决于你——在需要多人协作的大型项目中,这会很有帮助。但如果你不喜欢,你完全可以不这样做。
107107

108-
### Mutation 必须是同步函数
108+
## Mutation 必须是同步函数
109109

110110
一条重要的原则就是要记住 **mutation 必须是同步函数**。为什么?请参考下面的例子:
111111

@@ -121,7 +121,7 @@ mutations: {
121121

122122
现在想象,我们正在 debug 一个 app 并且观察 devtool 中的 mutation 日志。每一条 mutation 被记录,devtools 都需要捕捉到前一状态和后一状态的快照。然而,在上面的例子中 mutation 中的异步函数中的回调让这不可能完成:因为当 mutation 触发的时候,回调函数还没有被调用,devtools 不知道什么时候回调函数实际上被调用——实质上任何在回调函数中进行的状态的改变都是不可追踪的。
123123

124-
### 在组件中提交 Mutation
124+
## 在组件中提交 Mutation
125125

126126
你可以在组件中使用 `this.$store.commit('xxx')` 提交 mutation,或者使用 `mapMutations` 辅助函数将组件中的 methods 映射为 `store.commit` 调用(需要在根节点注入 `store`)。
127127

@@ -144,7 +144,7 @@ export default {
144144
}
145145
```
146146

147-
### 下一步:Action
147+
## 下一步:Action
148148

149149
在 mutation 中混合异步调用会导致你的程序很难调试。例如,当你调用了两个包含异步回调的 mutation 来改变状态,你怎么知道什么时候回调和哪个先回调呢?这就是为什么我们要区分这两个概念。在 Vuex 中,**mutation 都是同步事务**
150150

docs/zh/guide/plugins.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ const store = createStore({
2323
})
2424
```
2525

26-
### 在插件内提交 Mutation
26+
## 在插件内提交 Mutation
2727

2828
在插件中不允许直接修改状态——类似于组件,只能通过提交 mutation 来触发变化。
2929

@@ -54,7 +54,7 @@ const store = createStore({
5454
})
5555
```
5656

57-
### 生成 State 快照
57+
## 生成 State 快照
5858

5959
有时候插件需要获得状态的“快照”,比较改变的前后状态。想要实现这项功能,你需要对状态对象进行深拷贝:
6060

@@ -85,7 +85,7 @@ const store = createStore({
8585

8686
上面插件会默认启用。在发布阶段,你需要使用 webpack 的 [DefinePlugin](https://webpack.js.org/plugins/define-plugin/) 或者是 Browserify 的 [envify](https://github.com/hughsk/envify) 使 `process.env.NODE_ENV !== 'production'``false`
8787

88-
### 内置 Logger 插件
88+
## 内置 Logger 插件
8989

9090
Vuex 自带一个日志插件用于一般的调试:
9191

docs/zh/guide/state.md

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# State
22

3-
### 单一状态树
3+
## 单一状态树
44

55
<div class="scrimba"><a href="https://scrimba.com/p/pnyzgAP/cWw3Zhb" target="_blank" rel="noopener noreferrer">在 Scrimba 上尝试这节课</a></div>
66

@@ -10,7 +10,7 @@ Vuex 使用**单一状态树**——是的,用一个对象就包含了全部
1010

1111
存储在 Vuex 中的数据和 Vue 实例中的 `data` 遵循相同的规则,例如状态对象必须是纯粹 (plain) 的。**参考:**[Vue#data](https://v3.cn.vuejs.org/api/options-data.html#data-2)
1212

13-
### 在 Vue 组件中获得 Vuex 状态
13+
## 在 Vue 组件中获得 Vuex 状态
1414

1515
那么我们如何在 Vue 组件中展示状态呢?由于 Vuex 的状态存储是响应式的,从 store 实例中读取状态最简单的方法就是在[计算属性](https://cn.vuejs.org/guide/computed.html)中返回某个状态:
1616

@@ -43,7 +43,7 @@ const Counter = {
4343
}
4444
```
4545

46-
### `mapState` 辅助函数
46+
## `mapState` 辅助函数
4747

4848
<div class="scrimba"><a href="https://scrimba.com/p/pnyzgAP/c8Pz7BSK" target="_blank" rel="noopener noreferrer">在 Scrimba 上尝试这节课</a></div>
4949

@@ -79,7 +79,7 @@ computed: mapState([
7979
])
8080
```
8181

82-
### 对象展开运算符
82+
## 对象展开运算符
8383

8484
`mapState` 函数返回的是一个对象。我们如何将它与局部计算属性混合使用呢?通常,我们需要使用一个工具函数将多个对象合并为一个,以使我们可以将最终对象传给 `computed` 属性。但是自从有了[对象展开运算符](https://github.com/tc39/proposal-object-rest-spread),我们可以极大地简化写法:
8585

@@ -93,6 +93,6 @@ computed: {
9393
}
9494
```
9595

96-
### 组件仍然保有局部状态
96+
## 组件仍然保有局部状态
9797

9898
使用 Vuex 并不意味着你需要将**所有的**状态放入 Vuex。虽然将所有的状态放到 Vuex 会使状态变化更显式和易调试,但也会使代码变得冗长和不直观。如果有些状态严格属于单个组件,最好还是作为组件的局部状态。你应该根据你的应用开发需要进行权衡和确定。

docs/zh/guide/strict.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ const store = createStore({
1111

1212
在严格模式下,无论何时发生了状态变更且不是由 mutation 函数引起的,将会抛出错误。这能保证所有的状态变更都能被调试工具跟踪到。
1313

14-
### 开发环境与发布环境
14+
## 开发环境与发布环境
1515

1616
**不要在发布环境下启用严格模式**!严格模式会深度监测状态树来检测不合规的状态变更——请确保在发布环境下关闭严格模式,以避免性能损失。
1717

docs/zh/guide/typescript-support.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ declare module '@vue/runtime-core' {
2828
}
2929
```
3030

31-
## `useStore` 组合式函数类型声明
31+
## `useStore` 组合式函数类型声明
3232

3333
当使用组合式 API 编写 Vue 组件时,您可能希望 `useStore` 返回类型化的 store。为了 `useStore` 能正确返回类型化的 store,必须执行以下步骤:
3434

docs/zh/index.md

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

77
Vuex 是一个专为 Vue.js 应用程序开发的**状态管理模式 + 库**。它采用集中式存储管理应用的所有组件的状态,并以相应的规则保证状态以一种可预测的方式发生变化。
88

9-
### 什么是“状态管理模式”?
9+
## 什么是“状态管理模式”?
1010

1111
让我们从一个简单的 Vue 计数应用开始:
1212

@@ -62,7 +62,7 @@ createApp(Counter).mount('#app')
6262

6363
![vuex](/vuex.png)
6464

65-
### 什么情况下我应该使用 Vuex?
65+
## 什么情况下我应该使用 Vuex?
6666

6767
Vuex 可以帮助我们管理共享状态,并附带了更多的概念和框架。这需要对短期和长期效益进行权衡。
6868

docs/zh/installation.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# 安装
22

3-
### 直接下载 / CDN 引用
3+
## 直接下载 / CDN 引用
44

55
[https://unpkg.com/vuex@4](https://unpkg.com/vuex@4)
66

@@ -15,19 +15,19 @@
1515
<script src="/path/to/vuex.js"></script>
1616
```
1717

18-
### npm
18+
## npm
1919

2020
``` bash
2121
npm install vuex@next --save
2222
```
2323

24-
### Yarn
24+
## Yarn
2525

2626
``` bash
2727
yarn add vuex@next --save
2828
```
2929

30-
### 自己构建
30+
## 自己构建
3131

3232
如果需要使用 dev 分支下的最新版本,您可以直接从 GitHub 上克隆代码并自己构建。
3333

0 commit comments

Comments
 (0)