vue beforerouteleave

每次你以为你已经把vue用的很熟练的时候,它总会给你惊喜

最近才做了一个功能一个路由下面有两个tab切换的页面,互相切换的时候需要保持之前选的参数,其实tab本身是有这个功能的,但是这个需求切换的时候是需要像后台发送请求,并且路由改变再切回来参数是要初始化的,所以想到了用beforerouteleave

image.png
image.png

beforerouteleave之前是一直听闻这个东西并没有用过,再网上看了,按照他们的用法并没有效果
然后就自己试了一下结果成功了
看我的目录结构


image.png

下面的migrationPeople和personalMigration分别是tab切换里面的两个内容
index里面是写tab切换的
我们只需要把beforeRouteLeave想写vue生命周期一样的写法写进来就好了,至于参数to,from是什么就给路由守卫是一样的,感兴趣的可以自己打印看一下

   beforeRouteLeave(to,from,next){
      if(sessionStorage.getItem('migrationPeopleDate')){
        sessionStorage.removeItem('migrationPeopleDate')
      }
      if(sessionStorage.getItem('personalMigrationMan')){
        sessionStorage.removeItem('personalMigrationMan')
      }
      next()
    },

你可能感兴趣的:(vue beforerouteleave)