angular - 角度路由中的 CanActivate 保护,无需重复“CanActivate”属性
问题描述
我想在路由中使用 canActivate 保护而不重复
canActivate: [AuthGuard],
如下代码
import { AuthGuard } from 'src/app/core/guards/auth.guard';
const routes: Routes = [{
path: '', data: { title: 'Users' },
children: [
{
path: 'createuser',
canActivate: [AuthGuard],
component: UserComponent,
data: { title: 'Create User' }
},
{
path: 'updateuser',
canActivate: [AuthGuard],
component: UpdateUserComponent,
data: { title: 'Update User' }
},
]
}];
解决方案
我认为您正在寻找 CanActivateChild,它可以让您为所有子路由指定警卫
import { AuthGuard } from 'src/app/core/guards/auth.guard';
const routes: Routes = [{
path: '', data: { title: 'Users' }, canActivateChild: [AuthGuard]
children: [
{
path: 'createuser',
component: UserComponent,
data: { title: 'Create User' }
},
{
path: 'updateuser',
component: UpdateUserComponent,
data: { title: 'Update User' }
},
]
}];
取自: https ://angular.io/api/router/CanActivateChild
推荐阅读
- javascript - 如何在Javascript中对数字求和
- angular - 如何在 ngClass 条件中包含带有 angular2/4/5 的字符串的模板变量?
- php - 为什么 jQuery 从 php 解析的 Input 标签不起作用?
- firebase - Firestore onWrite 触发器没有身份验证信息
- python - Python Grade Book Assignment,写作和阅读记录,以及字母成绩的总和,无法得到正确的输出
- android - 库没有被导入
- javafx - JavaFX.fxml.LoadException
- angular - Angular 从 URL 中删除 #
- c# - 统一整合 admob 奖励视频
- ios - 使用 handleWatchKitExtensionRequest