angular - 角路由器出口移除的导航栏
问题描述
我有一个应用程序,其中有一个标题和一个侧边栏。它看起来像这样:
<mat-drawer-container class="sidenav-container">
<app-side-nav></app-side-nav>
<mat-drawer-content>
<app-header></app-header>
<main>
<router-outlet></router-outlet>
</main>
</mat-drawer-content>
</mat-drawer-container>
侧导航包含 2 个模块作为可点击链接(比如说模块 1、模块 2)。Module1 包含 3 个组件,名为my identity,users and container.
以下是容器 html:
<nav mat-tab-nav-bar>
<a mat-tab-link [routerLink]="['/identity/my-identity']">My
Identity</a>
<a mat-tab-link [routerLink]="['/identity/users']">Users</a>
</<nav mat-tab-nav-bar>
我的计划是从容器导航到身份或用户。在图片中,当我单击 module1 时,您可以看到当前页面。但不幸的是,每当我点击身份或用户时,它都会正确加载组件,但导航菜单会消失。
我想要以下行为:my identity
默认情况下,单击 module1 应该加载,我可以导航到用户而不会消失导航菜单。我应该做哪些更正或如何做到这一点?
解决方案
那是因为您的标签是单个路由器插座的一部分Identity
。Users
尝试在包含它们的组件中遵循此结构:
<nav mat-tab-nav-bar>
</nav mat-tab-nav-bar>
<router-outlet></router-outlet>
使用文档正确实现它。
然后,您可以向这条路线声明孩子。这意味着如果正确完成,您将router-outlet
仅更改深度 n°2(第二个),而不是第一个。
但话又说回来,如果您想要更具体的答案,请考虑提供一个最小且可重现的问题示例。
推荐阅读
- mongodb - 如何使用 MongoDB 进行分页
- node.js - 我的 node_modules 文件夹中的 Elastic Beanstalk SymLink
- python-3.x - 同时写入数据框中的多个列
- r - ggplot for multiple values in the same row
- php - 使用范围生成多维 PHP 数组
- python - 菜鸟问题 - Python、Selenium、XPATH - 搜索网站上是否有文本
- mongoose - 在特定集合中查找子文档
- python - Redis 连接返回 UnicodeError
- sql - 如何通过 BigQuery 中的依赖匹配键连接两个表?
- magento - Magento 电子邮件模板,新货件