store的计算属性。getter的返回值会根据它的依赖被缓存起来,且只有当它的依赖值发生了改变才会被重新计算。
说白啦就相当于vue中的计算属性
getters: {
doubleCount (state) {
return state.count * 2;
}
}
通过属性访问
Getter会暴露为store.getters对象:this.$store.getters.doubleCount
通过方法访问
也可以让getter返回一个函数,来实现给getter传参
getters: {
addCount: state => num => state.count + num;
}
this.$store.addCount(3);
mapGetters 辅助函数
import { mapsGetters } from 'vuex';
export default {
computed: {
...mapGetters([
'doubleCount',
'addCount',
])
}
}
如果你想将一个 getter 属性另取一个名字,使用对象形式:
mapGetters({
// 把 `this.doneCount` 映射为 `this.$store.getters.doneTodosCount`
storeDoubleCount: 'doubleCount'
})