前言
该项目是根据b站up学习来的
视频教学地址:B站视频教学-编程界小明哥
主要为把项目中的一些问题进行整理,方便自己理解
问题
vuex层刷新后store的数据容易丢
办法:在刷新前将store中的内容添加到sessionStorage
使用插件vuex-persistedstate将store的对象存起来。
安装 npm i vuex-persistedstate
在store种引入 import createPersistedState from "vuex-persistedstate"
使用 plugins:[createPersistedState({storage: window.sessionStorage})]
之后需要将菜单路由重新添加
data(){
return{
user:JSON.parse(sessionStorage.getItem('CurUser')),
}
},
//监视路由,然后重新赋值
watch:{
'$store.state.menu':{
handler(val,old){
if(!old&&this.user&&this.user.no){
this.$store.commit("setRouter",val)
}
},
immediate:true
}
}