store的计算属性。getter的返回值会根据它的依赖被缓存起来,且只有当它的依赖值发生了改变才会被重新计算。
说白啦就相当于vue中的计算属性

  1. getters: {
  2. doubleCount (state) {
  3. return state.count * 2;
  4. }
  5. }

通过属性访问

Getter会暴露为store.getters对象:this.$store.getters.doubleCount

通过方法访问

也可以让getter返回一个函数,来实现给getter传参

  1. getters: {
  2. addCount: state => num => state.count + num;
  3. }
  1. this.$store.addCount(3);

mapGetters 辅助函数

  1. import { mapsGetters } from 'vuex';
  2. export default {
  3. computed: {
  4. ...mapGetters([
  5. 'doubleCount',
  6. 'addCount',
  7. ])
  8. }
  9. }

如果你想将一个 getter 属性另取一个名字,使用对象形式:

  1. mapGetters({
  2. // 把 `this.doneCount` 映射为 `this.$store.getters.doneTodosCount`
  3. storeDoubleCount: 'doubleCount'
  4. })