vue3-ts路由守卫
时间: 2023-08-22 15:05:48 浏览: 192
vue2.0 实现导航守卫(路由守卫)
Vue 3 中的路由守卫有以下几种类型:
1. 全局前置守卫 (beforeEach):在路由切换之前触发,适用于全局的权限控制等场景。
```typescript
import { Router, RouteRecordRaw } from 'vue-router';
const router = createRouter({
// ...
});
router.beforeEach((to, from, next) => {
// 进行权限判断或其他逻辑操作
next(); // 放行
});
```
2. 路由独享前置守卫 (beforeEnter):在特定路由配置中定义的守卫,在进入该路由前触发。
```typescript
const routes: Array<RouteRecordRaw> = [
{
path: '/example',
component: ExampleComponent,
beforeEnter: (to, from, next) => {
// 进行权限判断或其他逻辑操作
next(); // 放行
},
},
];
```
3. 组件内的守卫:
- beforeRouteEnter:在进入路由前触发,但此时组件实例还未被创建,
阅读全文