对于vuex的watch监控
在项目开发中,利用…mapStates(‘wordAnnotation’,{book:‘book’})设置成this.book直接访问,但是通过watch监控book的时候是没用的,需要设置成’state.store.wordAnnotation.book’来进行监控才有用。还有几个坑使用vuex时,mutation里面的函数是没有返回值的,不能用return。mutation里面的函数参数...
·
在项目开发中,利用state来定义vuex的全局变量
const store = {
state:{
book: String
},
getter:{
getBook(state){
return state.book;
}
}
}
然后通过引用
import {mapMutations,mapGetters,mapState} from 'vuex'
export default{
computed:{
...mapState({
book: 'book'
}),
...mapGetter({
getBook,'getBook'
})
},
//两者监控方式不同
watch:{
'store.state.book':function(newVal,oldVal){
},
getBook:function(newVal,oldVal){
}
}
}
还有几个坑
使用vuex时,mutation里面的函数是没有返回值的,不能用return。
mutation里面的函数参数只能拥有一个,如果有多个参数需要设置成数组或者对象来进行传参。
vuex中的state里面的对象值需要添加属性时,必须使用Vue.set或者this.$set来进行附加属性,不然监控不到。
更多推荐
已为社区贡献9条内容
所有评论(0)