state 全局值 设置 和获取

 

commit

dispatch

在store js文件中定义

state: {
shopId: ""
},
 
mutations: {
// shopid
SETID (state, data) {
console.log("app-mutation", data)
state.oldshopId = state.shopId
state.shopId = data   // 获取传来的值
}
},

.//设置   

let str = JSON.stringify(this.newShop);
localStorage.setItem('shop',str)    ---将值保存在缓存中
this.$store.dispatch('getParamSync',JSON.parse(localStorage.getItem('shop')))
this.$store.commit('SETID',JSON.parse(localStorage.getItem('shop')).shopId)

 

//获取   --- 注意得在HTML中显示变量

computed: {
...mapState({
themeColor: state => state.app.themeColor,
menuColor: state =>
{
console.log('nav', state)
return state.app.menuColor
},
collapse: state =>{
return state.app.collapse
},
shopId: state => {   //shopId  自定义
return state.app.shopId
},
}),
 
},
、、、、、、、转载、、、、、、

this.$store.commit('toShowLoginDialog', true);
this.$store.dispatch('toShowLoginDialog',false)
 

主要区别是:

dispatch:含有异步操作,例如向后台提交数据,写法: this.$store.dispatch('mutations方法名',值)

commit:同步操作,写法:this.$store.commit('mutations方法名',值)
---------------------
作者:qq_36165747
来源:CSDN
原文:https://blog.csdn.net/qq_36165747/article/details/81082963
版权声明:本文为博主原创文章,转载请附上博文链接!

posted @ 2019-05-06 16:12  Qu西亚  阅读(1247)  评论(0编辑  收藏  举报