vuex getters计算过滤操作

本文介绍如何在 Vuex 中使用 getters 进行计算属性操作,包括定义 getter 函数、在 store 中引入 getters 属性以及在 Vue 组件中通过 computed 属性访问 getters 的值。还介绍了如何使用 mapGetters 辅助函数简化模板中的代码。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

getters基本用法:

比如我们现在要对store.js文件中的count进行一个计算属性的操作,就是在它输出前,给它加上100.

我们首先要在store.js里用const声明我们的getters属性。

 

1

2

3

4

5

const getters = {

    count:function(state){

        return state.count +=100;

    }

}

写好了gettters之后,我们还需要在Vuex.Store()里引入,由于之前我们已经引入了state盒mutations,所以引入里有三个引入属性。代码如下,

1

2

3

export default new Vuex.Store({

    state,mutations,getters

})

在store.js里的配置算是完成了,我们需要到模板页对computed进行配置。在vue 的构造器里边只能有一个computed属性,如果你写多个,只有最后一个computed属性可用,所以要对上节课写的computed属性进行一个改造。改造时我们使用ES6中的展开运算符”…”。

1

2

3

4

5

6

computed:{

    ...mapState(["count"]),

    count(){

        return this.$store.getters.count;

    }

},

需要注意的是,你写了这个配置后,在每次count 的值发生变化的时候,都会进行加100的操作。

用mapGetters简化模板写法:

我们都知道state和mutations都有map的引用方法把我们模板中的编码进行简化,我们的getters也是有的,我们来看一下代码。

首先用import引入我们的mapGetters

1

import { mapState,mapMutations,mapGetters } from 'vuex';

在computed属性中加入mapGetters

1

...mapGetters(["count"])

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值