Vue
Vue Router
Vue Router 路由、参数和守卫的使用方式。
发布于 2026年5月30日0 views
Vue Router 负责 Vue SPA 的页面跳转和路由管理。
基本路由
路由通常集中在 router 目录。
const routes = [
{
path: "/",
component: () => import("@/pages/HomePage.vue"),
},
{
path: "/users",
component: () => import("@/pages/UserListPage.vue"),
},
];路由跳转
组件中使用 useRouter:
const router = useRouter();
router.push("/users");也可以带参数:
router.push({
path: "/users",
query: {
keyword: "alice",
},
});读取路由信息
使用 useRoute:
const route = useRoute();
console.log(route.query.keyword);常用于读取:
- 路由参数。
- query。
- meta 信息。
动态路由
动态路径:
{
path: "/users/:id",
component: () => import("@/pages/UserDetailPage.vue"),
}读取参数:
const route = useRoute();
const id = route.params.id;路由守卫
路由守卫常用于登录校验和权限判断。
router.beforeEach((to) => {
const authStore = useAuthStore();
if (to.meta.requiresAuth && !authStore.token) {
return "/login";
}
});路由 meta:
{
path: "/admin",
component: () => import("@/pages/AdminPage.vue"),
meta: {
requiresAuth: true,
},
}注意事项
- 页面筛选条件适合放 query,方便刷新和分享。
- 登录校验可以放全局守卫。
- 页面组件里不要硬编码太多跳转路径,可以集中维护路由常量。
- 路由懒加载可以减少首屏包体积。
总结
Vue Router 负责页面跳转、路由参数和访问控制。页面状态能放 URL 的优先放 URL,登录和权限判断可以用路由守卫统一处理。