abortNavigation

中止当前页面导航

abortNavigation() 用于创建中止当前导航的结果,通常在路由中间件中通过 return 返回。

声明

abortNavigation(reason?: unknown): NavigationResult

参数

reason

默认阻止:

return abortNavigation();

也可以传入中止原因:

return abortNavigation(new Error("没有访问权限"));
中止原因会传递给导航调用的 failcomplete 回调。

示例

export default defineRouteMiddleware((to) => {
  if (to.path === "/pages/forbidden/index") {
    return abortNavigation(new Error("没有访问权限"));
  }
});

与 goTo 的区别

  • abortNavigation():阻止进入目标页面,并停留在当前页面;
  • goTo():将用户带到登录页、首页或其他页面。

相关

使用手册:前往了解页面中间件