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使用时,若需要传递参数:在模板中绑定事件时传递好参数,否则参数就是事件对象。

相关推荐
sunly_12 分钟前
Flutter:自定义Tab切换,订单列表页tab,tab吸顶
开发语言·javascript·flutter
Zero_pl25 分钟前
vue学习路线
vue.js
咔咔库奇30 分钟前
【TypeScript】命名空间、模块、声明文件
前端·javascript·typescript
NoneCoder32 分钟前
JavaScript系列(42)--路由系统实现详解
开发语言·javascript·网络
2013crazy1 小时前
Java 基于 SpringBoot+Vue 的校园兼职平台(附源码、部署、文档)
java·vue.js·spring boot·兼职平台·校园兼职·兼职发布平台
兩尛1 小时前
订单状态定时处理、来单提醒和客户催单(day10)
java·前端·数据库
又迷茫了1 小时前
vue + element-ui 组件样式缺失导致没有效果
前端·javascript·vue.js
哇哦Q1 小时前
原生HTML集合
前端·javascript·html
SoWhat~1 小时前
随遇随记篇
前端·javascript
孟健1 小时前
重磅首发:国产AI编程助手Trae实测!免费用上Claude是什么体验?
前端·aigc·visual studio code