在前端开发工作中,经常会用到路由守卫,监听全局路由变化,对系统权限进行控制。有时候我们也需要监听当前页面的离开事件(即在当前页面中对路由跳转进行拦截)。
history.block方法
const unblock = history.block((tx) => {})
通过执行histroy.block方法,会开始监听路由变化,并拦截路由跳转。返回的unblock事件,可用于取消block事件。
如果想要在拦截路由之后,再次放行,需要执行一下unblock(),然后再通过history.push跳转到指定路由。