当前位置: 首页 > news >正文

Vue 四个map的使用方法

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

                computed:{

                        //借助mapState生成计算属性:sum、school、subject(对象写法)

                        ...mapState({sum:'sum',school:'school',subject:'subject'}),

                        //借助mapState生成计算属性:sum、school、subject(数组写法)

                        ...mapState(['sum','school','subject']),

                }

        2. mapGetters方法:用于帮助我们映射state中的数据为计算属性。

                computed:{

                        //借助mapGetters生成计算属性:bigSum(对象写法)

                        ...mapGetters({bigSum:'bigSum'}),

                        //借助mapGetters生成计算属性:bigSum(数组写法)

                        ...mapGetters(['bigSum'])

                }

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

                methods: {

                        //靠mapActions生成:incrementOdd、incrementWait(对象形式)

                        ...mapActions({incrementOdd:'incrementOdd',incrementWait:'incrementWait'}),

                        

                        //靠mapActions生成:incrementOdd、incrementWait(数组形式)

                        ...mapActions(['incrementOdd','incrementWait']),

                },

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

                methods: {

                        //靠mapMutations生成:increment、decrement(对象形式)

                        ...mapMutations({INCREMENT:'INCREMENT',DECREMENT:'DECREMENT'}),

                        

                        //靠mapMutations生成:increment、decrement(数组形式)

                        ...mapMutations(['INCREMENT','DECREMENT']),

                },

/*    Count.vue    */
<template><div class="main"><h1>这门课是{{ school }}的{{ subject }}课程</h1><h2>当前求和为:{{ sum }}</h2><h3>当前求和放大十倍为:{{ bigSum }}</h3><select v-model.number="n"><option value="1">1</option><option value="2">2</option><option value="3">3</option></select><button @click="INCREMENT(n)">+</button><button @click="DECREMENT(n)">-</button><button @click="incrementOdd(n)">当前为奇数再加</button><button @click="incrementWait(n)">等会再加</button></div>
</template><script>import {mapState,mapGetters,mapMutations,mapActions} from 'vuex'export default {name:'Count',data() {return {n:1}},methods: {// increment(){//     //只需要执行state中sum的加法功能,逻辑简单可以不写dispatch//     this.$store.commit('INCREMENT',this.n)// },// decrement(){//     //只需要执行state中sum的减法功能,逻辑简单可以不写dispatch//     this.$store.commit('DECREMENT',this.n)// },//靠mapMutations生成:increment、decrement(对象形式)// ...mapMutations({INCREMENT:'INCREMENT',DECREMENT:'DECREMENT'}),//靠mapMutations生成:increment、decrement(数组形式)...mapMutations(['INCREMENT','DECREMENT']),/* **************************************************************** */// incrementOdd(){//     this.$store.dispatch('incrementOdd',this.n)// },// incrementWait(){//     this.$store.dispatch('incrementWait',this.n)// },//靠mapActions生成:incrementOdd、incrementWait(对象形式)// ...mapActions({incrementOdd:'incrementOdd',incrementWait:'incrementWait'}),//靠mapActions生成:incrementOdd、incrementWait(数组形式)...mapActions(['incrementOdd','incrementWait']),},computed:{//借助mapState生成计算属性:sum、school、subject(对象写法)// ...mapState({sum:'sum',school:'school',subject:'subject'}),//借助mapState生成计算属性:sum、school、subject(数组写法)...mapState(['sum','school','subject']),/* **************************************************************** *///借助mapGetters生成计算属性:bigSum(对象写法)// ...mapGetters({bigSum:'bigSum'}),//借助mapGetters生成计算属性:bigSum(数组写法)...mapGetters(['bigSum'])}}
</script><style lang="less" scoped>button{margin-left: 5px;}
</style>

 

http://www.lryc.cn/news/601269.html

相关文章:

  • Java面试实战:企业级性能优化与JVM调优全解析
  • mac neo4j install verifcation
  • 1.qt历史版本安装与多版本开发(解决被拦截问题)
  • 前缀和-560.和为k的子数组-力扣(LeetCode)
  • Qt C++ GUI 函数参数速查手册:基础与布局
  • HDFS基础命令
  • Python 列表推导式与生成器表达式
  • 3-基于FZ3B的Vitis AI DPU加速平台搭建
  • Vscode的常用快捷键(摆脱鼠标计划)
  • CodeBLEU:面向代码合成的多维度自动评估指标——原理、演进与开源实践
  • Jmeter的元件使用介绍:(七)后置处理器详解
  • 【NLP实践】一、中文短句情感二分类实现并提供RestfulApi服务调用
  • Mitk教程案例项目编译
  • Java AI面试实战:Spring AI与RAG技术落地
  • 【Qt开发】信号与槽(二)-> 信号和槽的使用
  • LeetCode第349题_两个数组的交集
  • UDS 0x29 身份验证服务 Authentication service
  • KNN 算法中的各种距离:从原理到应用
  • Java面试全攻略:Spring生态与微服务架构实战
  • 零基础 “入坑” Java--- 十四、字符串String
  • docker-desktop引擎启动失败报wsl --update
  • 数独求解器与生成器(回溯算法实现)
  • 一文读懂 JWT(JSON Web Token)
  • Spring Boot2错误处理
  • Android网络框架封装 ---> Retrofit + OkHttp + 协程 + LiveData + 断点续传 + 多线程下载 + 进度框交互
  • 【AI阅读】20250717阅读输入
  • Linux YUM 安装:高效管理软件包的利器
  • 白杨SEO:搜索引擎优化中的allintitle是什么指令?有哪些用处?
  • 8. 状态模式
  • 【最新版】防伪溯源一体化管理系统+uniapp前端+搭建教程