angular - 读取下一条路线的自定义数据,Angular 11
问题描述
我有一个像这样的路由器对象
const routes: Routes = [
{ path: '', component: LoginComponent },
{
path: 'admin-dashboard',
loadChildren: () => import('@sample/timesheetlibs/admin-dashboard').then((m) => m.TimesheetlibsAdminDashboardModule),
canActivate: [UserManagementGuardService],
data: {
permission: 'canRouteHome'
}
},
{
path: 'user-management',
loadChildren: () => import('@sample/timesheetlibs/user-management').then((m) => m.TimesheetlibsUserManagementModule),
canActivate: [UserManagementGuardService],
data: {
permission: 'canRouteUserManagement'
}
},
];
现在我想阅读下一条路线的自定义数据,例如,我在上admin-dashboard
,我想去user-management
,所以在中UserManagementGuardService
,我想阅读data.permission
之前的导航,但不知道如何阅读,请帮忙。
解决方案
您UserManagementGuardService
可以通过以下方式访问数据:
@Injectable()
class UserManagementGuardService implements CanActivate {
constructor(...) {}
canActivate(
route: ActivatedRouteSnapshot
): Observable<boolean|UrlTree>|Promise<boolean|UrlTree>|boolean|UrlTree {
const permission = route.data?.permission;
...
return ...
}
}
推荐阅读
- sql - 用于替换特定列中部分字符串的 REPLACE 函数
- r - 将数据框与一列中的列表保存为制表符分隔的单个条目“.txt”文件
- php - 从 localhost 连接到在线数据库时,用户 'totallig_root'@'197.210.64.73' 的访问被拒绝(使用密码:YES)
- r - R 在地图函数中继续 t.test,尽管没有足够的观察值
- c++ - 如何在 NGINX 服务器上运行 C++ CGI 脚本
- java - 为什么我的拦截器的 Spring 处理程序在配置登录身份验证时工作错误?感到不解
- php - 将特色图片批量添加到现有的 Wordpress 帖子中
- docker - 在构建阶段从基础镜像执行 ENTRYPOINT
- javascript - 如何将 JSON 响应转换为 .json 文件
- c++ - 如何在 setter 方法中设置 boost::optional 成员变量的值?