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()
}
相关推荐
flashlight_hi4 分钟前
LeetCode 分类刷题:141. 环形链表
javascript·算法·leetcode
www_stdio6 分钟前
JavaScript 中的异步编程与 Promise
javascript
宇余28 分钟前
前端新玩具Vike:摆脱框架绑架,实现真正的技术自由
vue.js
Macbethad29 分钟前
Typora 精通指南:掌握高效 Markdown 写作的艺术
前端·macos·前端框架
F_Director31 分钟前
Webpack DLL动态链接库的应用和思考
前端·webpack·性能优化
唆了蜜.1 小时前
ESLint: Expected indentation of * spaces but found *. (style/indent)
开发语言·javascript·vue·webstorm
益达是我1 小时前
【element-plus】element-plus升级到v2.11.7,el-tree文字不显示问题
前端·javascript·vue.js·element-plus
用户9714171814271 小时前
JavaScript 数组方法完全指南
javascript·面试
社恐的下水道蟑螂1 小时前
从 JS 单线程到 Promise:彻底搞懂异步编程的 "同步化" 魔法
前端·javascript
Mrk1 小时前
Vue3 渲染器源码实现
vue.js