Angular2路由器可以激活,带有参数吗?

马蒂斯·塞格斯(Mathijs Segers)

我已经在这个特定问题上看到了一些问题。

我最近只从事angular2项目。无论如何,我现在正陷入一个问题。在已弃用的路由器中,我在路由的数据部分中添加了用户角色,我已经覆盖了routerOutlet,因此可以在激活路由之前检查该值)。

目前,我们可以通过可以调用它来符合CanActivate Class / Interface行。

现在,我希望能够为此类CanActivate类提供Permissions(我将其划分为Enum)。但是,在我仅通过访问我的SessionService检查用户是否已登录之前,现在需要检查用户是否具有某些权限。

正如我现在所看到的,我必须实现一个新类,该类为每个许可都实现CanActivate。现在,这意味着我将拥有7。但是,我们正处于这个确切项目的早期阶段,如果没有过多的思考,我可以将其提高到11。

在我面前可以看到的是一个实现,每个canActivate实现仅花费我大约3-5行。但是,我可以通过提供属性或参数的实现获得更多帮助。

不考虑这种情况,我必须实现类似的类:

CanActivateIfUserHasPermissionsViewContentAndViewUsers甚至更长。

请注意,在我的情况下,权限基本上是多个操作。如查看所有内容元素,或编辑所有内容等。

马蒂斯·塞格斯(Mathijs Segers)

因此,我找不到用参数实现CanActivate的方法。

但是,我确实找到了一种变通方法,它现在对我来说似乎很好。我有一项服务,可以在Module构造上加载我的路由。(我只是将其添加到模块的构造函数中)。

我的路线现在包含数据{权限:[此处是我的值]}。由于canActivate实现也使用相同的服务,因此可以在canActive挂钩中进行检查。

我的解决方案基于我对另一个问题的讨论:Angular2 RC5跨模块提供程序/扫描

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

带有子路由器的Angular2路由器不起作用

来自分类Dev

带有子路由器的Angular2路由器不起作用

来自分类Dev

新的Angular2路由器配置

来自分类Dev

Angular2路由器和导航

来自分类Dev

注入带有路由器链接的模板组件时,Angular2路由器链接问题

来自分类Dev

angular2路由器的严格“状态”查询参数行为

来自分类Dev

angular2路由器参数错误

来自分类Dev

Angular2路由配置(带有两个参数的路由)

来自分类Dev

如何检查Angular2 3.0.0-rc.1路由器链接是否未激活?

来自分类Dev

具有站点迁移功能的Angular2路由器

来自分类Dev

Angular 2路由器

来自分类Dev

Angular 2 RC4路由器在激活之前已获得预期的路由

来自分类Dev

.otherwise或新Angular2路由器中的/ **以通过通配符路由非路由

来自分类Dev

.otherwise或新Angular2路由器中的/ **以通过通配符路由非路由

来自分类Dev

Angular2路由器:为什么我们在路由上不再有状态

来自分类Dev

angular2 rc3路由器alpha 3.0.0.7默认路由

来自分类Dev

Angular2路由器,从url获取路由数据,以显示面包屑

来自分类Dev

Angular2路由器,内容更改,如何避免路由和重建页面

来自分类Dev

Angular2路由器VS ui-router-ng2 VS ngrx路由器

来自分类Dev

与Angular 2路由器截取路由请求

来自分类Dev

Angular2路由器错误:找不到要加载“主页”的主要出口

来自分类Dev

如何将Angular2路由器连接到ngrx / store?

来自分类Dev

Angular2路由器的navigationByUrl()未调用ngOnInit()

来自分类Dev

Angular2 RC5路由器找不到模块(延迟加载)

来自分类Dev

Angular2路由器:找不到要加载“ HomeComponent”的主要插座

来自分类Dev

Angular2路由器弃用的依赖项未加载

来自分类Dev

即使未调用行,Angular2路由器也会执行

来自分类Dev

如何在Angular2路由器中导航到子节点的根?

来自分类Dev

Angular2路由器:找不到要加载“ HomeComponent”的主要插座

Related 相关文章

  1. 1

    带有子路由器的Angular2路由器不起作用

  2. 2

    带有子路由器的Angular2路由器不起作用

  3. 3

    新的Angular2路由器配置

  4. 4

    Angular2路由器和导航

  5. 5

    注入带有路由器链接的模板组件时,Angular2路由器链接问题

  6. 6

    angular2路由器的严格“状态”查询参数行为

  7. 7

    angular2路由器参数错误

  8. 8

    Angular2路由配置(带有两个参数的路由)

  9. 9

    如何检查Angular2 3.0.0-rc.1路由器链接是否未激活?

  10. 10

    具有站点迁移功能的Angular2路由器

  11. 11

    Angular 2路由器

  12. 12

    Angular 2 RC4路由器在激活之前已获得预期的路由

  13. 13

    .otherwise或新Angular2路由器中的/ **以通过通配符路由非路由

  14. 14

    .otherwise或新Angular2路由器中的/ **以通过通配符路由非路由

  15. 15

    Angular2路由器:为什么我们在路由上不再有状态

  16. 16

    angular2 rc3路由器alpha 3.0.0.7默认路由

  17. 17

    Angular2路由器,从url获取路由数据,以显示面包屑

  18. 18

    Angular2路由器,内容更改,如何避免路由和重建页面

  19. 19

    Angular2路由器VS ui-router-ng2 VS ngrx路由器

  20. 20

    与Angular 2路由器截取路由请求

  21. 21

    Angular2路由器错误:找不到要加载“主页”的主要出口

  22. 22

    如何将Angular2路由器连接到ngrx / store?

  23. 23

    Angular2路由器的navigationByUrl()未调用ngOnInit()

  24. 24

    Angular2 RC5路由器找不到模块(延迟加载)

  25. 25

    Angular2路由器:找不到要加载“ HomeComponent”的主要插座

  26. 26

    Angular2路由器弃用的依赖项未加载

  27. 27

    即使未调用行,Angular2路由器也会执行

  28. 28

    如何在Angular2路由器中导航到子节点的根?

  29. 29

    Angular2路由器:找不到要加载“ HomeComponent”的主要插座

热门标签

归档