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()
}
相关推荐
光影少年24 分钟前
react和vue图片懒加载及实现原理
前端·vue.js·react.js
胡图蛋.28 分钟前
vue的理解
vue.js
小仓桑29 分钟前
深入理解 JavaScript 中的 AbortController
前端·javascript
摸鱼也很难31 分钟前
解决 node.js 执行 npm下载 报无法执行脚本的错
前端·npm·node.js
换个名字不能让人发现我在摸鱼32 分钟前
裁剪保存的图片黑边问题
前端·javascript
PeterJXL35 分钟前
pnpm:包管理的新星,平替 npm 和 yarn
前端·npm·node.js·pnpm
小牛itbull35 分钟前
Mono Repository方案与ReactPress的PNPM实践
开发语言·前端·javascript·reactpress
黑色的糖果36 分钟前
vue2封装自定义插件并上传npm发布及使用
前端·npm·node.js
afabama38 分钟前
nvm 安装某个版本的node,缺少npm包
前端·npm·node.js