Vuex中的mapState、mapMutations、mapActions、mapGetters的简单理解

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Vuex中的mapState、mapMutations、mapActions、mapGetters的简单理解相关的知识,希望对你有一定的参考价值。

参考技术A 首先引入
因为是组件中在使用映射 所以从【组件】中导入

然后还是模块化写法

而此时 在store内 这些个store的方法都是需要声明的

Vuex mapState的基本使用

mapState把Store中的state映射到组件中的计算属性

Store文件

import Vue from ‘vue‘
import Vuex from ‘vuex‘
Vue.use(Vuex)
export default new Vuex.Store({
  state: {
    msg: ‘Hello world‘,
    count: 0
  },
  mutations:{
  },
  actions:{
  },
  modules:{
  }
})

vue文件

<template>
  <div>
    <p>count: {{count}}</p>
    <p>msg: {{msg}}</p>
  </div>
</template>

<script>
import { mapState } from ‘vuex‘
export default {
  computed:{
    /**
      相当于
      count: state => state.count
      msg: state=> state.msg
     */
    ...mapState([‘count‘,‘msg‘])
  }
}
</script>

如果vue文件已经存在count msg属性使用对象形式生成计算属性

<template>
  <div>
    <p>count: {{num}}</p>
    <p>msg: {{message}}</p>
  </div>
</template>

<script>
import { mapState } from ‘vuex‘
export default {
  computed:{
    /**
      相当于
      num: state => state.count
      message: state=> state.msg
     */
    ...mapState({num: ‘count‘, message: ‘msg‘})

  }
}
</script>

以上是关于Vuex中的mapState、mapMutations、mapActions、mapGetters的简单理解的主要内容,如果未能解决你的问题,请参考以下文章

Vuex中的mapState、mapMutations、mapActions、mapGetters的简单理解

Vuex入门—— state,mapState,...mapState对象展开符详解

循环遍历 Vuejs 中的 mapstate 计算属性

vuex this.$store.state.属性和mapState的属性中的一点点区别

vuex里mapState,mapGetters使用详解

如何在 ...mapState (Vuex) 之间设置一个值