vue单页面F5刷新,state数据丢失问题
iview实现单页面的数据管理
很多数据管理,各种借口调用,F5刷新后全变成空白表格
解决方法
在主页面加载时去读取sessionStorage,页面重载时存储整个store到sessionStorage,可以实现数据本地化存储,解决刷新丢失数据的问题
<div id="app">
<router-view/>
</div>
</template>
<script>
export default {
name: 'App',
created () {
//在页面加载时读取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))
})
}
}
</script>