使用vuex的mapState是为了获取state的映射关系的,在不使用mapState时候,采用computed中加入全局状态变量的方法如下:

computed: {count () {return this.$store.state.count}}

但是当组件中需要多个全局状态变量的时候,就很麻烦 使用mapState就可以快速建立映射关系:

方式1:数组

import { mapState } from 'vuex'
const Counter = {template: `<div>{{ count }}</div>`,computed: mapState([// 映射 this.count 为 store.state.count 数组的方式'count'])
}

方式二:采用函数(但是注意如果想要使用data中的变量,必须是常规函数而不能是箭头函数)

 computed: mapState({// 箭头函数可使代码更简练count: state => state.count,// 传字符串参数 'count' 等同于 `state => state.count`countAlias: 'count',// 为了能够使用 `this` 获取局部状态,必须使用常规函数countPlusLocalState (state) {return state.count + this.localCount}})

方式三:扩展运算符(这种方式比较常用,不仅可以添加新的计算属性,而且可以随意映射state变量而且可以使用局部变量 this.localCount)

computed: {localComputed () { /* ... */ },// 使用对象展开运算符将此对象混入到外部对象中...mapState({// ...count: state => state.count,countAlias: 'count',countPlusLocalState (state) {return state.count + this.localCount}})
}

vuex mapState相关推荐

  1. vue——vuex mapState,mapGetters,mapMutations,mapActions

    当多次获取state中的数据时会出现大量的 $store.state.属性名 造成代码的冗余同时也很麻烦.就可使用 mapState(引用时使用的名称,'state中的属性名') 或 mapState ...

  2. 【Vue】vuex mapState和mapGetters

    1.mapState方法:用于帮助映射state中的数据为计算属性 computed: {// 借助mapState生成计算属性:sum.school.subject(对象写法一)...mapStat ...

  3. 前端:一篇彻底搞懂vuex (mapState、mapGetters、mapMutations、mapActions)

    文章目录 一.state 1.1 state使用 1.2 mapState 辅助函数 二.getters 2.1 getters的使用 三.Mutation 3.1 mutations的使用 3.2 ...

  4. vuex mapState的使用

    store/index.js import Vue from 'vue'; import Vuex from 'vuex';Vue.use(Vuex);const store = new Vuex.S ...

  5. 用vuex mapState时新写法会出现的错误和注意事项(渲染不出来页面的原因)

    会出现的错误: 遍历渲染列表时,不能省略 $store.state 去写成cinemaList,会出错,渲染不出来数据: 注意事项: 注意认真检查没有用mapState映射时,要所有的状态都要加 $s ...

  6. [转] Vuex入门(2)—— state,mapState,...mapState对象展开符详解

    1.state   state是什么? 定义:state(vuex) ≈ data (vue) vuex的state和vue的data有很多相似之处,都是用于存储一些数据,或者说状态值.这些值都将被挂 ...

  7. 2021-12-14 vue移动端卖座电影项目(十二) 使用mapState控制封装选项卡tabbar的显隐,以及回顾使用中央事件总线eventbus和vuex的state控制tabbar显隐的异同

    文章目录 0.实现场景:进入详情页时,底部选项卡隐藏 1.使用中央事件总线控制tabbar的v-show的值 2.使用vuex的state控制tabbar的v-show的值 3.使用vuex的muta ...

  8. Vue 之 Vuex(3)mapState 的使用

    mapState 是用来简化 computed 计算属性的一种写法,下面做一个对比: 未使用之前 computed: {count() {return this.$store.state.count} ...

  9. Vuex中mapState

    最近使用到这个辅助函数时,忘了好多,温习一下mapState 普通手写计算属性: computed:{count(){ // 计算属性渲染的时候 {{count}}对的 count()错误写法 ret ...

最新文章

  1. ubuntu VMware
  2. MySQL数据库的性能优化总结
  3. 跳转到页面后加载一个请求的方法
  4. 神经网络架构搜索_神经网络架构
  5. linux笔记 3-4 SMTP,.配置电子邮件传输
  6. python中的urllib库_python3里的Urllib库
  7. linux 文件读写锁,linux下的简单文件读写锁的操作
  8. pdg快速转换pdf源码_在手机上快速免费把图片转换成PDF文件
  9. 基于ssm公租房管理系统
  10. c语言程序的执行起点是,c语言试题及答案
  11. 文件被system进程锁定,不能删除
  12. 二倍图三倍图什么意思_iOS开发中的二倍图、三倍图
  13. Unity Resource文件夹的使用
  14. Beaglebone Black – 智能家居控制系统 LAS - 插座组装
  15. form 表单验证验证方法-validate-methods.js
  16. 计算机公式求时间差公式,excel 时间差计算方法
  17. 年龄计算机在线计算适合你的对象,抖音年龄计算器恋爱对象生日,年龄计算器适合你的恋爱对象...
  18. 测试小故事74:没有计划的日子
  19. MATLAB中快捷注释方法和使用“%%”将代码分块运行方法
  20. 共模扼流圈的工作原理与作用以及特点和应用详解

热门文章

  1. Chatgpt使用的是哪种自我监督学习算法
  2. 碎碎念No.05 走丢的侠客|CSDN创作打卡
  3. python sched_Python定时模块之sched
  4. python sched_Python定时任务sched模块用法示例
  5. 基于GmSSL的国密SSL单向验证客户端C源码
  6. springside showcase mysql_搭建SpringSide示例showcase的eclipse运行环境
  7. linux的diff工具原理之Myers算法
  8. oracle dg切换步骤,详解Oracle dg 三种模式切换
  9. Android风格与主题(style and theme)
  10. 点云 3D 天气数据增强 - Fog Simulation on Real LiDAR Point Clouds for 3D Object Detection in ... (ICCV 2021)