html - 如何使用多个带角
问题描述
我用过很多次路由器插座,但从没想过要使用很多。当我尝试创建一个带有导航栏的登录页面时,我基本上考虑过这一点,然后我想如果我在一个页面中创建多个导航栏会怎样。
我试图搜索角度文档,但我什么也不懂,绝对没有。最后的想法来了,在堆栈溢出中问我的问题。
<div class="row no-gutters">
<div class="leftside">
<img src="assets/truck.jpeg">
</div>
<div class="rightside">
<h1 class="title">Route Optimization</h1>
<br>
<app-loginbar></app-loginbar>
<router-outlet></router-outlet>
</div>
</div>
这基本上是我的登录页面/忘记了密码,如您所见,我有一个导航栏和我的路由器 outler 标签。
<ul class="nav justify-content-center">
<li class="nav-item">
<button class="nav-button-left" (click)="changeSignIn()">
<h3 class="navelement" id="signin" style="border-bottom: 2px solid gray;">Sign In</h3>
</button>
</li>
<li class="nav-item">
<button class="nav-button-right" (click)="changeForgot()">
<h3 class="navelement" id="forgot">Forgot Password</h3>
</button>
</li>
</ul>
我的导航栏不过是两个按钮的列表: - 两者都更新导航栏的下划线并使用此功能从一个组件移动到另一个组件:
this.router.navigateByUrl("...");
我想要的是有一个全新的页面。我不希望出现登录/忘记密码导航栏。这就是我所面临的:
如您所见,我有导航栏和“主要作品!” 同样,我只想要一个带有“主要作品”的新总页!出现。
我没有遇到任何错误,我只是不知道该怎么做。
解决方案
您正在寻找named router outlets
. 有了这个,一个页面上可以有多个router-outlets
,其中只有一个可以不命名。在您的路由配置中,您需要指定outlet
属性以指定应在哪个出口中加载哪个组件
文档位于:https ://angular.io/guide/router#displaying-multiple-routes-in-named-outlets
推荐阅读
- javascript - 一定间隔后的Javascript旋转动画
- javascript - 如何在php中动态获取特定的行数据
- java - 有没有办法在一行中将数字添加到 ArrayList 中的现有数字?
- java - Xmlgregoriancalendar 不允许在 ddMMyyyy 中前导零
- c# - SQL Server 返回没有十进制值的小数的奇怪行为
- xamarin - 如何使用自定义渲染器默认设置开关的颜色?
- c# - 如何使用使用 StreamWriter 保存的文本文件加载 datagridview
- ocaml - reasonml 记录 vs JS 对象
- c# - 使用 SWIG 将 std::array 转换为 C# 数组
- php - 在多维数组中显示循环级别