首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

vuex在页面刷新后数据被清除

用vuex来做全局的状态管理, 发现当刷新网页后,保存在vuex实例store里的数据会丢失 产生原因 其实很简单,因为store里的数据是保存在运行内存中的,当页面刷新时,页面会重新加载vue实例,store...而第二种可以保证刷新页面数据不丢失且易于读取。...因为我们是只有在刷新页面时才会丢失state里的数据,想法在点击页面刷新时先将state数据保存到sessionStorage,然后才真正刷新页面 beforeunload这个事件在页面刷新时先触发的。...我们总不能每个页面都监听这个事件,所以选择放在app.vue这个入口组件中,这样就可以保证每次刷新页面都可以触发。...$store.state,JSON.parse(sessionStorage.getItem("store")))) } //在页面刷新时将vuex里的信息保存到sessionStorage

3.1K00
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    Vue路由嵌套刷新后页面没有重新渲染

    Vue路由嵌套刷新后页面没有重新渲染 强烈推介IDEA2020.2破解激活,IntelliJ...IDEA 注册码,2020.2 IDEA 激活码 问题 在路由嵌套时,如果此时地址栏到了子路由下面,刷新页面路由地址肯定不会有变化,那么此时会出现子路由页面没有重新渲染的情况。...让它显示出来,在父路由重新渲染完成后,将条件渲染的值变为false,在修改渲染条件数据之后使用 $nextTick,再将条件渲染的值变为true,相当于重新加载了一次子路由。...$nextTick(()=>{ this.routerAlive = true; }); } 方法2 其实上述方法的原理就是让浏览器认为是一个新的子路由...,所以对其进行重新加载渲染,同理,另一种方法是给容器router-view一个key值即可完美解决,每次刷新的随机值都让容器看上去是一个新的。

    1.5K30

    刷新页面后让WordPress背景随机切换

    刷新页面后让WordPress背景随机切换 作者:matrix 被围观: 3,478 次 发布时间:2013-10-10 分类:Wordpress 零零星星 | 10 条评论 » 这是一个创建于...3248 天前的主题,其中的信息可能已经有所发展或是发生改变。...只需要几行php代码就可以让WordPress主题背景随机切换,每次刷新切换不同的图片。这需要按F5刷新页面或者到新页面时背景才会自动变换。...>.jpg"/> 说明: 1行中的5代表有5张图片可供切换 2行中div1为背景css样式id 3行中src=后面的地址为当前主题的bg目录内的*.jpg图片。...笔记一下,我让背景更好看些就添加了bg1的样式id。之前的>>修改WordPress背景带像素点的颗粒半透明点阵效果。 <?

    53920

    vuex + sessionstorage 解决vue项目刷新后页面空白数据丢失

    所以,意味着用户进入页面或者刷新页面,这个值就会变成我自己设定的100000.那么第一个限制条件就完成了。...此时我还需要一个状态join,让我区分用户不是在初始化状态。这样,如果这两个条件同时成立,那就能断定他是刷新了。 那么这个状态值需要在一开始没有,页面初始化后才存在,且页面刷新不丢失。...,每次初始化进入页面后,开始这段判断时,该值就已经存在,也会被检测到,场景就会被当作刷新的情况。...缩写,用于判断用户是否是初次加载页面 if (join && newTeamID && newTeamID > 0) { // 页面刷新的情况 // 刷新没有清除...TeamID=' + newTeamID; } } 这样解决了刷新后页面空白的问题,重定向重新请求数据 但是如果为了解决部分数据丢失的问题,也可以直接将数据实现存在sessionstorage内

    3K20

    刷新页面后this.$route.params 为空

    刷新页面后 this.$route.params 为空 深入学习 vue-router时,按官方文档的教程看下来,结果发现刷新页面后,打印的this....在跳转后的页面获取,而不是在 app.vue 中获取 User.vue User export default...猜测可能是组件创建、渲染阶段时,路由还没有跳转,所以打印的信息不对。路由跳转后,修改数据 this.$route是在数据更新阶段,所以获取最新的路由信息应该在 updated中获取。...在导航守卫中获取 和 Vue2 的相同。 2. 在跳转后的页面获取,而不是在 app.vue 中获取 这个在开发中用到的可能性还大一些。...毕竟开发时每个页面都需要路由信息的很少,都需要的话就可以采用上面在导航守卫中获取的做法 User.vue User <script

    95120

    Vuex页面刷新的数据丢失问题

    Vuex页面刷新的数据丢失问题 1、问题描述 2、解决方案:使用sessionStorage   在实际项目中,经常会遇到多个组件需要访问同一个数据的情况,且都需要根据数据的变化作出响应,而这些组件之间可能并不是父子组件这种简单的关系...它采用集中式存储来管理应用程序中所有组件的状态,并以相应的规则保证状态以一种可预测的方式发生变化。...1、问题描述 Vuex用起来确实很舒服,但是今天碰到了个问题,就是我将JWT和一些权限字符串使用store保存的时候,刷新页面之后这些值就没了,由于我后端集成了SpringSecurity,所以每次请求我都会去验证...JWT,如果刷新页面的话,后续请求头中就没有token,就会导致报错。   ...token和menuList两个state   重新登录查看Vuex中的state 此时再刷新页面:   可以看到,数据仍然在,问题解决。

    1.8K30

    vue关于页面刷新的几个方式

    在写项目的时候会遇到需要刷新页面重新获取数据,浅浅总结了一下几种方案。 1.this.$router.go(0) 强制刷新页面,会出现一瞬间的白屏,用户体验感不好。...2.location.reload() 也是强制刷新页面,和第一种方法一样,会造成一瞬间的白屏,用户体验感不好。 3.跳转空白页再跳回原页面 在需要页面刷新的地方写上:this....在emptyPage.vue里beforeRouteEnter 钩子里控制页面跳转,从而达到刷新的效果 beforeRouteEnter (to, from, next) { ? ? ?...inject: [‘reload’] 在需要刷新的地方调用:this.reload() 然后就可以实现页面的刷新功能了。...这种可以实现页面刷新但是不会造成白屏和路由跳转, 是开发过程中用户体验感较好的一种。 版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。

    2.3K30

    javascript页面刷新的几种方法

    大家好,又见面了,我是你们的朋友全栈君。...javascript页面刷新的几种方法 javascript refresh page 几种页面刷新的方法 window.location.reload(),window.history.go(0)和document.execCommand...%>等需在服务端解释才能生成的页面代码,否则直接读取缓存中的数据 不刷新 2 location.reload() 要重新连服务器以读得新的页面(虽然页面是一样的) 刷新 3 location...7 location.replace(location) 执行后无后退、前进 通过加载 URL 指定的文档来替换当前文档 ,这个方法是替换当前窗口页面,前后两个页面共用一个 窗口,所以是没有后退返回上一页的...其中20指隔20秒后跳转到http://www.url.com页面 3.页面自动刷新js版 function myrefresh() {

    5.3K10

    React Router 使用 Url 传参后改变页面参数不刷新的解决方法

    问题 今天在写页面的时候发现一个问题,就是在 React Router 中使用了 Url 传参的功能,像这样: export class MainRouter extends React.Component...来获取 url 参数的值,但是我发现如果你在这个 url 下只将 url 中的参数部分改变,比如 channelId 从 1 变成 2 的时候,页面并不会重新渲染。...解决办法 查阅资料后发现这样的根本原因是 props 的改变并不会引起组件的重新渲染,只有 state 的变化才会引起组件的重新渲染,而 url 参数属于 props,故改变 url 参数并不会引起组件的重新渲染...后来发现React的组件中有一个可复写的方法 componentWillReceiveProps(nextProps) { ... } 这个方法可以在 React 组件中被复写,这个方法将会在 props...改变的时候被调用,所以你可以使用这个方法将 nextProps 获取到,并且在这个方法里面修改 state 的内容,这样就可以让组件重新被渲染。

    4.2K30
    领券