1:项目结构
Vuex遵守的规则:
应用层级的状态应该集中带耽搁store对象中
提交mutation是更改状态的唯一方法,并且这个过程是同步的
异步逻辑都应该封装到action中;
2:表单处理
在严格模式中使用Vuex时,在属于Vuex的state上使用v-model会抛出一个错误
<input v-model='obj.message' @input='updateMessage'>
//...
computed:{
..mapState({
massage:state=>state.obj.message
})
},
methods:{
updateMessage(e){
this.$store.commit('updateMessage',e.target.value)
}
}
下面是mutation函数
mutations:{
updateMessage(state,message){
state.obj.message=message
}
}
双向绑定的计算属性
<input v-model='message'>
computed:{
message:{
get(){
return this.$store.obj,message
},
set(value){
this.$store.commit('updateMessage',value)
}
}
}