Vue-54、Vue技术vuex中四个map使用(mapState、mapGetters、mapActions、mapMutations)

1、mapState方法:用于帮助我们映射state中的数据为计算属性

javascript 复制代码
computed:{
	//借助mapstate生成计算属性,从state中读取数据(对象写法)
	...mapState({sum:'sum',school:'school',subject:'subject'}),
	//借助mapstate生成计算属性,从state中读取数据(数组写法)
    ...mapState(['sum','school','subject']),
}

2、mapGetters:用于帮助我们映射getters中的数据为计算属性

javascript 复制代码
computed:{
	//借助mapGetters生成计算属性,从getters中读取数据(对象写法)
    ...mapGetters({bigSum:'bigSum'}),
    //借助mapGetters生成计算属性,从getters中读取数据(数组写法)
    ...mapGetters(['bigSum']),
}

3、mapActions方法:用于帮助我们生成与action对话的方法,即:包含$store.dispatch(xxx)的函数

javascript 复制代码
methods:{
	 //借助mapActions生成对应的方法,方法中会调用dispatch去联系actions(对象写法)
        ...mapActions({addSumOdd:'SumOdd',addSumWait:'jiaWait'})

     //借助mapActions生成对应的方法,方法中会调用dispatch去联系actions(数组写法)
        ...mapActions(['SumOdd','jiaWait'])
	
}

4、mapMutations方法:用于帮助我们生成与mutations对话的方法,即:包含$store.commit(xxx)的函数

javascript 复制代码
methods:{
	 //借助mapMutations生成对应的方法,方法中会调用commit去联系mutations(对象写法)
     ...mapMutations({addSum:'JIA',reduceSum:'JIAN'}),
     //借助mapMutations生成对应的方法,方法中会调用commit去联系mutations(数组写法)
     ...mapMutations(['JIA','JIAN']),
}

注意:mapActions与mapMutations使用时,若需要传递参数:在模板中绑定事件时传递好参数,否则参数就是事件对象。

相关推荐
夏幻灵3 小时前
JavaScript this 面试:五种绑定规则、优先级与常见面试陷阱
开发语言·javascript·面试
Lvan的前端笔记3 小时前
docker:每个前端项目一个 Nginx 容器还是只有一个Nginx容器
前端·nginx·docker
三天不学习3 小时前
Egg.js 4 突然爆火,原因是否归结于AI 原生落地需求爆发?
前端·javascript·全栈·egg.js
xcs194054 小时前
前端 vue 的前端页面debugger 进不去
前端·javascript·vue.js
明月_清风5 小时前
Deno 终局来了:从挑战 Node 到被 Cloudflare 收编
前端·后端·node.js
Csvn6 小时前
框架性能优化
前端
雪芽蓝域zzs7 小时前
第 5 节:Marker 点击弹出 InfoWindow 信息窗口
vue.js
回眸&啤酒鸭8 小时前
【回眸】OpenSwarm 多智能体协作系统实战指南
大数据·前端·人工智能
用户69371750013848 小时前
2026,程序员的时代拐点到了
android·前端·后端
大龄秃头程序员8 小时前
一次 iBeacon + BLE 无感解锁方案的实现记录
前端