vue 返回上一页 页面不刷新 keep-alive
2020-01-13 20:48
3459 查看
文章目录
<---------------------------------假装分割--------------------------------->
keep-alive 将页面缓存 返回时页面不刷新问题
这样一些功能模块,是一个组件,当选中的时候跳转到下一个页面去
返回的时候页面没有保存之前的状态
返回后:
解决办法
<keep-alive>包裹动态组件时,会缓存不活动的组件实例,而不是销毁它们。和
<transition>相似,
<keep-alive>是一个抽象组件:它自身不会渲染一个 DOM 元素,也不会出现在父组件链中。
当组件在
<keep-alive>内被切换,它的 activated 和 deactivated 这两个生命周期钩子函数将会被对应执行。
- 路由配置
在需要缓存的组件路由中 添加路由元 配置 keepAlive属性(名字随意), 我这儿 设置值为true
{ path: 'stepStore', component: stepSecond, meta: { keepAlive: 'true' }
- 路由选项
// keep-alive中为要缓存的 组件 <keep-alive> // keepAlive 为true走这个 <router-view v-if="$route.meta.keepAlive"></router-view> </keep-alive> // keep 为false 走这个 <router-view v-if="!$route.meta.keepAlive"></router-view>
- 路由守卫
使用路由守卫 来更改 meta 的内容来实现
beforeRouteLeave: (to, from, next) => { // 如果跳转的页面为/setting/stepStore 就将keepAlive设置为true就走缓存了组件那一步 if (to.path === '/setting/stepStore') { to.meta.keepAlive = true } else { // 否则keepAlive设为 false to.meta.keepAlive = false } next() }
这个非常有用,先码在这!
- 点赞
- 收藏
- 分享
- 文章举报
相关文章推荐
- vue单页 使用keep-alive页面返回不刷新
- vue 页面返回记住滚动条上次浏览位置(keep-alive)
- vue 实现返回上一页不请求数据keep-alive
- VUE 返回上一页 不刷新页面
- vue自动缓存keep-alive当前页面数据,包括选择框里面选择的内容或者搜索框选好的内容,用vue的activated更新最新的数据,更新返回的页面数据
- 解决vue单页使用keep-alive页面返回不刷新的问题
- 微信内置浏览器返回上一页,页面被刷新
- 使用vue的时候我们使用keep-alive会将页面缓存的解决方法
- vue单页面项目返回上一页无效,链接变化了,但是页面没有变化
- php执行成功后返回前一页并刷新页面
- 一个可以返回前一页并自动刷新页面的ASP代码.
- 页面返回历史上一页并且刷新
- 详解keep-alive + vuex 让缓存的页面灵活起来
- JS 刷新当前页面 返回上一页并刷新的方法
- js 返回前一页并刷新页面方法
- Js返回上一页,刷新页面,定时刷新,改变地址栏 等常用实用技巧
- JS 刷新当前页面 返回上一页并刷新的方法
- JS 刷新当前页面 返回上一页并刷新的方法
- Vue路由开启keep-alive缓存页面
- 解决微信返回按钮到上一页页面不刷新的问题