vue实现页面刷新控制

最近做了个需求,要求从页面A进入页面B,正常刷新页面,页面B是可编辑的,从页面B进入页面C后,点击返回B页面,需要保存下页面B的内容,也就是不刷新,说简单就是A跳转到B,刷新,C到B,不刷新

主要是通过keep-live控制

在router,js里先设置keep-live

主要两点,一个是在template里通过路由元信息meta里的keepAlive控制是否使用keep-live缓存组件,二是在路由配置里通过设置meta的keepALive来实现缓存页面不刷新,需要缓存的设置keepAlive为true,不需要的保持默认

{
          path: 'service',
          component: {
            template: `<div>
              <keep-alive key="keep-alive">
                 <router-view v-if="$route.meta.keepAlive"> 
                 </router-view>
               </keep-alive>
              <router-view v-if="!$route.meta.keepAlive" key="not-keep-alive">
              </router-view>
            </div>`
          },
          children: [
            {
              path: 'job',
  
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值