时间:2021-05-26
mutation文件
import { RECEIVE_PUBLICHTIT} from './mutation-types' //保证刷新页面数据不消失*function storeLocalStore (state) { window.localStorage.setItem("publicTit",JSON.stringify(state));} export default { [RECEIVE_PUBLICHTIT] (state,{title}){ state.publicTit = title storeLocalStore(state) }}用到publicTit属性的组件
created(){ localStorage.getItem("publicTit")&&this.$store.replaceState(JSON.parse(localStorage.getItem("publicTit"))) },在created()生命周期中进行取值操作,这时需要判断第一次加载项目的时,localStorage没有publicTit的信息,所以先判断一下
实现思路 让vuex中publicTit的状态和localStorage中保持一致(从localStorage中取值)
优化版:
需要调用属性的组件
created(){ //在页面加载时读取localStorage状态 复制对象是解决新vuex管理的状态中新添加的字段也可以存入localStorage中 localStorage.getItem("publicTit") && this.$store.replaceState(Object.assign(this.$store.state,JSON.parse(localStorage.getItem("publicTit")))); //在页面刷新时将vuex里的信息保存到localStorage里,避免多次调用localStorage进行存储降低性能,beforeunload是在页面刷新之前调用 window.addEventListener("beforeunload",()=>{ localStorage.setItem("publicTit",JSON.stringify(this.$store.state)) }) }以上这篇vuex管理状态 刷新页面保持不被清空的解决方案就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
1、Ajax无刷新页面的好处:提供良好的客户体验,通过Ajax在后台从数据库中取得数据并展示,取缔了等待加载页面而出现的空白状态;2、那么,Ajax无刷新页面是
用js给出一个上传文件时不用刷新页面的方案uploaddocument.getElementById('upload-btn').onclick=functio
前言我们在使用Vuex的时候,会时不时的更改Vuex内的数据,但是页面不会随之更新,如果数据量大,一个数据依赖另一个数据的话,这样我们要是再刷新页面的话会把以前
局部刷新页面、异步加载页面方案:1.在jsp页面需要刷新的地方增加一个控件2.新建一个jsp页面:aaa.jsp(用来放置需要刷新的内容)3.将id为cours
vue的项目的登录状态如果用vuex状态管理,页面一刷新vuex管理的状态就会消失,这样登录路由验证就没有意义了。可以将登录的状态写到webStorage中进行