Angular2 CanActivate 除一条路线之外的所有路线的守卫

2024-04-22

我知道我们可以将位于一个模块中的路线分组。像那样:

canActivate: [AuthGuard],
    children: [
      {
        path: '',
        children: [
          { path: 'crises', component: ManageCrisesComponent },
          { path: 'heroes', component: ManageHeroesComponent },
          { path: '', component: AdminDashboardComponent }
        ],
      }

但我应该将该防护添加到每个模块的路由文件中。我有很多。

我希望用户在未经授权的情况下不能访问除一条(登录路线)之外的任何路线。

为所有人添加防护的正确方法是什么?


您可以将无组件空路径父路由与守卫一起使用

{ path: '', canActivate: [AuthGuard],  children: [
  {
    path: '',
    children: [
      { path: 'crises', component: ManageCrisesComponent },
      { path: 'heroes', component: ManageHeroesComponent },
      { path: '', component: AdminDashboardComponent }
    ],
  }
}

并在守卫中检查用户是否已登录。 如果未登录且当前路线为login那么还是允许吧。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Angular2 CanActivate 除一条路线之外的所有路线的守卫 的相关文章

随机推荐

  • 如何锁定 ASP.NET MVC 操作?

    我已经编写了一个用作服务的控制器和操作 这项服务的运行成本相当高 如果当前已存在正在运行的操作 我想限制对此操作的访问 有没有内置的方法来锁定 ASP NET MVC 操作 Thanks 您在寻找这样的东西吗 public MyContro
  • 如何使用准备好的 PDO 语句设置 ORDER BY 参数?

    我在使用参数时遇到问题ORDER BY我的 SQL 部分 它不发出任何警告 但不打印任何内容 order columnName direction ASC stmt db gt prepare SELECT field from table
  • Pandas 在由列表组成的元素上删除重复项

    假设我的数据框是 df pandas DataFrame 1 0 0 0 1 0 产生 0 0 1 0 1 0 0 2 1 0 我想删除重复项 并且只获取元素 1 0 和 0 0 如果我写 df drop duplicates 我收到以下错
  • Python向数据框添加列会导致NaN

    我有一个系列和 df s pd Series 1 2 3 5 df pd DataFrame 当我像这样向 df 添加列时 df loc 0 2 s iloc 0 3 df loc 1 3 s iloc 1 4 I get df 0 2 1
  • 如果存在则更改表,如果不存在则创建

    我需要运行一个安装程序 它也可以是更新程序 安装程序需要能够最终获得 mysql 数据库的特定方案 结构 无论某些表是否存在 丢失了几列 或者因为其结构是最新的而不需要更改 我怎样才能优雅地组合ALTER and CREATE 我在想一定有
  • 在数组中的两对之间添加键/值对

    我一直在寻找和思考 但无法想出一个可行的解决方案来解决这个问题 我有一个带有连续数字键的数组 Example Array 0 gt value 0 1 gt value 1 2 gt value 2 3 gt value 3 我需要在数组中
  • 查询列出数据库中每个表的记录数

    如何列出数据库中每个表的行数 一些相当于 select count from table1 select count from table2 select count from tableN 我将发布一个解决方案 但欢迎其他方法 如果您使用
  • 将对象序列化为 XML 时如何添加 XML 命名空间 (xmlns)

    我正在 XStream 的帮助下将对象序列化为 XML 如何告诉 XStream 将 xmlns 插入到对象的 XML 输出中 例如 我有一个想要序列化的简单对象 XStreamAlias value domain public class
  • 如何在 Spark Pipeline 中使用随机森林

    我想通过网格搜索和 Spark 交叉验证来调整我的模型 在 Spark 中 它必须将基础模型放入管道中 即管道办公室演示 http spark apache org docs latest ml guide html example mod
  • ASP.NET 自定义错误被忽略

    我在 web config 中配置了自定义错误 但 IIS 6 0 返回网站配置的 自定义错误 选项卡中指定的自定义错误
  • Coverage.py 无法发现子目录中没有 init.py 文件的测试

    当我运行 python 覆盖范围时 我总是需要一个空的 init py测试子目录中的文件以获得运行测试的覆盖范围 这是 python2 软件包的要求 但不是 python3 的要求 为了重现 我执行了以下操作 先决条件是 python3 p
  • XPath 和 Regexp 哪个更快?

    我正在为 firefox 制作一个附加组件 它使用 ajax 加载一个 html 页面 附加组件有它的 XUL 面板 现在 我没有寻找创建document对象并将ajax请求内容放入其中 然后使用xPath找到我需要的内容 相反 我加载内容
  • 用于云服务“沙盒”的 SecurityManager

    All 我正在设计一个基于云的服务 该服务将提供执行客户提交的一些 插件 代码的选项 为了使这项工作正常进行 插件不能威胁系统完整性或有能力访问其他客户端的数据 这一点至关重要 理想情况下 我希望客户端能够提交一个简单的 jar 文件 包含
  • 我应该为 Windows 选择 ActivePerl 还是 Strawberry Perl? [复制]

    这个问题在这里已经有答案了 我对 Perl 完全陌生 但我想尝试一下 我读到了有关 Windows 平台的两个竞争对手的发行版 我猜有just其他操作系统上的 Perl 维基百科 http en wikipedia org wiki Per
  • .NET Core 锁定文件

    我有一个 ASP NET Core 应用程序 我通过运行命令来运行应用程序 dotnet run 当我构建此 ASP NET Core 应用程序时 我在五分之一的情况下会看到以下错误 C error CS2012 无法打开 C bin De
  • Swift:可编码 - 提取单个编码密钥

    我有以下代码来提取编码密钥中包含的 JSON let value try decoder decode String Applmusic self from 0 applmusic 这成功处理了以下 JSON applmusic code
  • Android 博客应用程序,我应该使用 Sharedpreferences 还是 Intents?

    我正在构建一个android应用程序 当前用户的后续页面是可点击的 我保存点击的页面id并将其传递给打开相应的页面 打开后 用户可以查看关注者列表 页面内的帖子等 这是包含所有页面子级的根节点 数据库 Firebase 结构 pageDat
  • GO Websocket 向所有客户端发送消息

    这段代码一切正常 为了更好的阅读而缩短了它 When Client1向服务器发送请求 服务器立即响应他 但是 其他客户端看不到响应消息 所以我想更进一步 当客户端向服务器发送请求时 服务器会响应所有客户端 以便所有客户端都可以看到该消息 我
  • 尝试在Python中将wav文件转换为文本时出现wave.Error:known format:3

    我需要从麦克风录制音频并将其转换为文本 我已经使用从网上下载的几个音频剪辑尝试了此转换过程 效果很好 但是 当我尝试转换从麦克风录制的音频剪辑时 出现以下错误 回溯 最近一次调用最后一次 文件 C Users HP AppData Loca
  • Angular2 CanActivate 除一条路线之外的所有路线的守卫

    我知道我们可以将位于一个模块中的路线分组 像那样 canActivate AuthGuard children path children path crises component ManageCrisesComponent path h