在App.vue中插入如下代码,
created() {
//解决刷新页面时丢失store中的数据问题
//在页面加载时读取sessionStorage里的状态信息
if(sessionStorage.getItem("store")) {
this.$store.replaceState(Object.assign({}, this.$store.state, JSON.parse(sessionStorage.getItem("store"))))
}
//在页面刷新时将vuex里的信息保存到sessionStorage里
window.addEventListener("beforeunload", () => {
sessionStorage.setItem("store", JSON.stringify(this.$store.state))
})
},
原理:监听页面的刷新,在刷新时将vuex里的信息保存到sessionStorage中,页面加载时读取sessionStorage中的数据再存入store中