Vuex知识汇总

vuex的五大核心

state:存放公共数据/状态;
getter:vuex独有的计算属性 ,获取state⾥⾯的状态,并且可以对数据进⾏处理之后在返回;
mutations:修改state⾥⾯的数据,只能进⾏同步的操作;
action:异步操作,触发mutation函数从而修改state里的数据;
module:将store分割成模块,每个模块里都有state,mutation,active,getter,当项目比较大时,可以分成很多的模块。

四大辅助函数

mapState

我们可以使用mapState辅助函数帮助我们生成计算属性

import { mapState } from "vuex";
computed: {
    ...mapState(["num", "msg"])
},

mapGetters

mapGetters辅助函数将store中的getters映射到局部计算属性,与state类似

import { mapGetters } from "vuex";
computed: {
    ...mapGetters({
      getMsg: "getMsg",
    }),
  },

mapMutations

mapMutations是mutation的辅助函数,用于在组件中映射mutation内的方法,以便在该组件中直接使用mutation里的方法 

复制代码
import { mapMutations } from "vuex";
methods: {
    // 点击事件
    add(num) {
      // 辅助函数
      this.addNum(num);
    }
    ...mapMutations(["addNum"])
    }),
  },
复制代码

mapActions

操作action辅助函数

复制代码
import { mapActions } from "vuex"; 
methods: {
    addActions() {
      this.changeNum();
    },
    ...mapActions({
      changeNum: "changeNum",
    }),
  },
复制代码

 mapState和mapGetter的使用只能在computed计算属性中,mapMutations和mapActions使用的时候只能在methods中调用

vuex工作流程

  • 客户端操作事件,dispatch调用一个action
  • 对应的action处理参数,比如接口/逻辑操作/传值/commit一个type类型
  • mutation接收一个type类型触发对应的函数,修改state的值
  • state更改后对应的view视图在render的作用下重新渲染

 

posted @   陈皮话梅  阅读(32)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· C#/.NET/.NET Core技术前沿周刊 | 第 29 期(2025年3.1-3.9)
· 从HTTP原因短语缺失研究HTTP/2和HTTP/3的设计差异
点击右上角即可分享
微信分享提示