一、vuex理解
https://vuex.vuejs.org/zh/guide/mutations.html
vuex是组件状态管理,使用的是store容器去储存组件状态
https://blog.csdn.net/m0_70477767/article/details/125155540 详细介绍以及下载加入实例
想要更改store中的状态唯一方法是提交mutation,mutation是同步操作,action是异步操作,可调用mutation
dispatch 是操作actions的,commit 是操作mutations的,都是存值,在组件中,若要取值需要通过this.$store.state.属性名访问
二、代码理解
在所需要触发的事件里调用所需要的操作,比如click事件里使用action异步操作:this.$store.dispatch('increment')
在actions: {
// 传参
increment (context,name) {
setTimeout(()=>{
// commit是操作mutations里的东西
context.commit('change',name);
},5000)
}
mutations:{
change(state,name){
state.username = name
}
}
单独的同步操作是使用mutations
在所需触发的事件里写:this.$store.commit('change',' 张三 '),可以向
store.commit
传入额外的参数额外的知识:
路由守卫:登录过一次储存在本地,再次点击页面就不需要登录操作
代码改变世界~