1路由守卫中的next()
next()方法表示放行,如果不执行此方法路由不会跳转,此方法可以接收一个参数
-
字符串路径:如果传递一个字符串路径,那么路由会重定向到该路径。
next('/home');
-
路由对象:如果传递一个路由对象,那么路由会重定向到该路由对象描述的路径。
next({ path: '/home' });
-
布尔值:如果传递
false
,则中断当前路由跳转,不会进行路由跳转。next(false);
-
回调函数:如果传递一个回调函数,在跳转完成时执行该回调函数。
next(vm => { // 在
跳转完成后执行一些操作 });
2.页面路由守卫
页面路由守卫可以直接在路由组件中使用,尤其一些缓存的路由组件可以解决一些问题
需要注意的是在beforeRouteEnter中的组件实例还没有被创建所以是没法使用this的