vue2 组件内路由守卫使用

1、beforeRouteEnter 进入页面

to -- 即将要跳转到的页面

form -- 跳转前的页面,从哪个页面跳转过来的

next -- 下一步,若无指定跳转的路由,设置为空 next() 即可

复制代码
beforeRouteEnter(to, from, next) {
    next()
},

使用 beforeRouteEnter 时,组件还没有创建,因此无法使用 this,当我们需要写逻辑的时候可以在 next() 里面写,具体如下:

复制代码
beforeRouteEnter(to, from, next) {
  next(vm => {
    if (from.path === '/details') {
      vm.getData('1');
    } else {
      vm.getData();
    }
  })
}

2、beforeRouteLeave 离开页面

使用方法和 beforeRouteEnter 一样,同样有 to,from,next

复制代码
beforeRouteLeave(to, from, next) {
    next()
}
相关推荐
越努力越幸运50815 分钟前
npm常见问题解决
前端·npm·node.js
Wild~~16 分钟前
electron-vite
前端·javascript·electron
by__csdn21 分钟前
Electron+Vite:实现electron + vue3 + ts + pinia + vite高效跨平台开发指南
前端·javascript·vue.js·typescript·electron·node.js·vue
国服第二切图仔22 分钟前
Electron 鸿蒙pc开发环境搭建完整保姆级教程(window)
javascript·electron·harmonyos
马达加斯加D23 分钟前
C# --- 如何写UT
前端·c#·log4j
yqcoder37 分钟前
在 scss 中,&>div 作用
前端·css·scss
小马哥编程43 分钟前
这个variables.scss文件中$menuText:#bfcbd9;:export {menuText: $menuText; }的语法符合要求吗
前端·css·scss
宋辰月1 小时前
zustand
前端·javascript·html
z***I3941 小时前
JavaScript原型链
开发语言·前端·javascript
x***58701 小时前
JavaScript语音识别开发
开发语言·javascript·语音识别