Vuex怎么使用,以及怎么获取修改声明的变量值和触发定义的方法!

今天来简单介绍一下Vuex在使用过程中应该怎么获取或者改变我们在state中声明的变量;

关于这个问题,其实答案有很多种,每个人的习惯都不太一样,而最为正确和最安全的方法我来大概介绍一下,希望可以帮到大家!
1.首先我们来引入vuex,里面的几个常用方法我就不一一介绍了,首先在state里面声明一个变量pathName,在定义一个方法savePath,第一个参数固定state,指向就是state本身,第二个参数是你调用方法时传的参数,如下图

//  在store里面的index.js文件写入
import Vue from "vue"
import Vuex from "vuex"
 
Vue.use(Vuex);
 
export default new Vuex.Store({
    state:{
        pathName: "",
    },
    mutations:{
        // 保存当前菜单栏的路径
        savePath(state,pathName){
            state.pathName = pathName;
        },
    }
  })

2.接下来我们在页面中调用的方法说一下

//  获取我们定义的变量值pathName
this.$store.state.pathName   //这样即可获取到
// 修改变量值两个方法

//  第一个方法,简单的,但不推荐
 let name = '修改pathName值'
 this.$store.state.pathName = name   //这样即可修改
 
 //  第二个方法  推荐安全 容易维护  
 this.$store.commit('savePath',name)

好了,简单说一下第二个方法吧,commit是自带的修改命名,第一个参数就是你在mutations里面定义的方法名,第二个参数就是你要传过去的参数,至于为什么要使用第二种,因为官方明确说明了,推荐使用第二种,不要直接修改state里面的变量,后期有可能会禁止直接修改,意味着你的页面有可能会集体报错无法修改,三思而后行啊,别为了一时的快乐,给自己制造无穷的麻烦!

猜你喜欢

转载自blog.csdn.net/m0_46156566/article/details/106941714