vuex的辅助函数

辅助函数

解耦代码,可以让代码变得更简洁,只能在支持模块化的地方使用

  • mapState
  • mapGetters
  • mapMutations
  • mapActions

mapState

import { mapState } from 'vuex'

export default {
  computed: mapState(), // 这样写不能添加新的针对该组件的computed
  computed: {
    ...mapState(['state属性名', 'state属性名2']),
    ...mapState({
      自定义名字: 'state属性名',
      'state属性名': 'state属性名'
    }),
    // 相当于
    自定义名字 () {
      return this.$store.state.属性名
    }
  }
}

mapGetters

import { mapGetters } from 'vuex'

export default {
  computed: mapGetters(), // 这样写不能添加新的针对该组件的computed
  computed: {
    ...mapGetters(['getter名字']),
    ...mapGetters({
      自定义名字: 'getter名字'
    }),
    // 相当于
    自定义名字 () {
      return this.$store.getters.getter名字
    }
  }
}

mapMutations

mapMutation和mapActions放在methods中,会被映射成一个方法

import {mapMutations} from 'vuex'
export default {
  methods: {
    ...mapMutations(['mutation名字']),
    ...mapMutations({
      自定义名字: 'mutation名字'
    }),
    // 相当于
    自定义名字 (data) {
      this.$store.commit('mutation名字', data)
    },
    // 如果在提交前需要进行其他操作
    自定义名字 () {
      // 其他操作

      this.mutation名字()
    }
  }
}

mapActions

import {mapActions} from 'vuex'
export default {
  methods: {
    ...mapActions(['action名字']),
    ...mapActions({
      自定义名字: 'actions名字'
    }),
    // 相当于
    自定义名字 (data) {
      this.$store.dispatch('action名字', data)
    },
    // 如果需要有其他操作
    自定义名字 () {
      // 其他操作

      this.action名字()
    }
  }
}

如果不理解,就先不要去看,学会如果使用this.$store

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • Vuex 的学习记录 资料参考网址Vuex中文官网Vuex项目结构示例 -- 购物车Vuex 通俗版教程Nuxt....
    流云012阅读 5,338评论 0 7
  • ### store 1. Vue 组件中获得 Vuex 状态 ```js //方式一 全局引入单例类 // 创建一...
    芸豆_6a86阅读 4,044评论 0 3
  • State 单一状态树 Vuex 使用单一状态树——是的,用一个对象就包含了全部的应用层级状态。至此它便作为一个“...
    peng凯阅读 3,968评论 2 0
  • 安装 npm npm install vuex --save 在一个模块化的打包系统中,您必须显式地通过Vue.u...
    萧玄辞阅读 8,043评论 0 7
  • 被大家最为忽略的负担是计较,心里太多放不下,尤其是虚荣与嫉妒,面子与攀比,所以累,而不知为何累
    金蟾云世界阅读 1,225评论 0 1

友情链接更多精彩内容