vuex辅助函数的使用

vuex是vue的公共状态管理,vuex核心的概念有五个,state,mutation,action,getter,module.

  • state 记录存储公共的状态。
  • mutation 事件改变state中的状态,第一个参数是state。
  • action 处理异步的事件。
  • getter 类似于计算属性。
  • module 暂时没用过。
    通常使用state,或者mutation都需要this.$store.state或者this.$store.commit来使用,但是有时候调用太多的状态,这样使用还是有些麻烦,所以可以借助vuex的辅助函数来解决这个问题。
    通过辅助函数mapState、mapActions、mapMutations,把vuex.store中的属性映射到vue实例身上,这样在vue实例中就能访问vuex.store中的属性了。
    使用时需要在组建内引入

注意事项,映射的名称不要和当前组件的data,methods名称发生冲突,否则会被覆盖。

import {mapState,mapMutations,mapActions,mapGetters} from "vuex"
  • state的辅助函数需要映射到计算属性中computed,映射的名称一定要相同,然后就可以通过this访问到state
  computed:{
        ...mapState(["name"]),//name和vuex中的state保持一至。
    },
methods:{
  click(){
    console.log(this.name)//访问到vuex的name
  }
}
  • mutation的辅助函数mapMutations把mutations里面的方法映射到methods中。映射的名称一定要相同,然后就可以通过this调用mutaition的方法

 mutations: {
    show(state){
      console.log(state)
    }
  },


 methods:{
        ...mapMutations(["show"]),
        click(){
            this.show()
        },
}
  • mapAcions:把actions里面的方法映射到methods中
  • mapGetters:把getters属性映射到computed身上
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 安装 npm npm install vuex --save 在一个模块化的打包系统中,您必须显式地通过Vue.u...
    萧玄辞阅读 7,985评论 0 7
  • ### store 1. Vue 组件中获得 Vuex 状态 ```js //方式一 全局引入单例类 // 创建一...
    芸豆_6a86阅读 4,005评论 0 3
  • Vuex是什么? Vuex 是一个专为 Vue.js应用程序开发的状态管理模式。它采用集中式存储管理应用的所有组件...
    萧玄辞阅读 8,296评论 0 6
  • Vuex 的学习记录 资料参考网址Vuex中文官网Vuex项目结构示例 -- 购物车Vuex 通俗版教程Nuxt....
    流云012阅读 5,312评论 0 7
  • ### store 1. Vue 组件中获得 Vuex 状态 ```js //方式一 全局引入单例类 // 创建一...
    芸豆_6a86阅读 2,953评论 0 0