一.vuex是用来干什么
vuex是vuejs应用程序的状态管理模式,这个状态可以理解为数据,一个vuejs应用程序的公共数据可以用vuex
来进行管理。
二.为什么要用vuex
1.一个vuejs应用,如果所有的数据都通过组件之间相互传递的话,整个程序就会变得非常负载,维护起来也极其
三.使用
1.获取vuex的数据
在要获取的组件中的计算属性中取vuex的的值,这个必须是在计算属性中
var get=new Vue({
computed:{
getmsg(){
return vuex.state.data //vuex实例中的数据
}
}
})
2.改变vuex中的数据
一般来说,在组件中的methods方法触发action中的动作
methods:{
add(){
vuex.dispatch('某个ation的方法',参数) //触发vuex的中的action中的方法,这个参数可写可不写,在action方法的第二个参数
}
}
3.再由vuxe实例action对象提交快照
actions:{
方法名({{commit}},参数) {
commit(快照名,参数) //这个参数随自己意愿,可以不用第二个参数的数据
}
也可以这么用
add(obj,参数){
obj.commit(快照) //不用es6的函数解构
}
// 这里的第一个参数是提交快照的对象,不是vuex实例,用es6的函数解构把commit提取出来,参数是dispatch中传过来的(可写可不写)
}
}
最终由快照改变vuex中的数据
mutations:{
add(state,参数){ //state这个第一个参数就是vuex中的state,参数是由ation传递
state.count+=参数
}
}