|
@@ -32,7 +32,9 @@ const store = new Vuex.Store({
|
|
|
})
|
|
|
```
|
|
|
|
|
|
-Getter 会暴露为 `store.getters` 对象:
|
|
|
+### 通过属性访问
|
|
|
+
|
|
|
+Getter 会暴露为 `store.getters` 对象,你可以以属性的形式访问这些值:
|
|
|
|
|
|
``` js
|
|
|
store.getters.doneTodos // -> [{ id: 1, text: '...', done: true }]
|
|
@@ -63,6 +65,10 @@ computed: {
|
|
|
}
|
|
|
```
|
|
|
|
|
|
+注意,getter 在通过属性访问时是作为 Vue 的响应式系统的一部分缓存其中的。
|
|
|
+
|
|
|
+### 通过方法访问
|
|
|
+
|
|
|
你也可以通过让 getter 返回一个函数,来实现给 getter 传参。在你对 store 里的数组进行查询时非常有用。
|
|
|
|
|
|
```js
|
|
@@ -78,6 +84,8 @@ getters: {
|
|
|
store.getters.getTodoById(2) // -> { id: 2, text: '...', done: false }
|
|
|
```
|
|
|
|
|
|
+注意,getter 在通过方法访问时,每次都会去进行调用,而不会缓存结果。
|
|
|
+
|
|
|
### `mapGetters` 辅助函数
|
|
|
|
|
|
`mapGetters` 辅助函数仅仅是将 store 中的 getter 映射到局部计算属性:
|