angular - 具有相同组件和不同参数的角路由器链接正在附加而不是路由
问题描述
我有一个边栏,我正在路由。对于第一次单击,我可以进行路由,但从第二次单击开始,路由将被附加而不是替换旧视图。我已从 app.module.ts 中删除 BrowserAnimationsModule
side.component.html
<aside >
<sectionclass="sidebar" style="height: auto;">
<ul *ngFor="let result of test_list| keyvalue let i=index" data-
widget="tree">
<li *ngFor="let result1 of result.value | keyvalue;let i=index"
(click)="getSomevalue">
<ul class="nav submenu " data-widget="tree" (click)="getSomevalue">
<li *ngFor="let result2 of result.value | keyvalue"
>
<a routerLink="/home/{{result2.value}}" routerLinkActive="on">
<span>{{result2.key}}</span>
</a>
</li>
</ul>
</li>
</ul>
</section>
</aside>
应用程序路由.module.ts
const routes: Routes = [
{
path: '',
component: LayoutComponent,
children: [
{
path: '',
component: LoginComponent
},
{
path: 'home',
component: HomeComponent
},
{
path: 'home/:id',
component: HomeComponent
}
]
}
];
@NgModule({
imports: [RouterModule.forRoot(routes)],
exports: [RouterModule]
})
export class AppRoutingModule { }
布局组件.ts
@Component({
selector: 'app-valid-user-layout',
template: `
<app-header></app-header>
<app-side></app-side>
<router-outlet></router-outlet>
<app-footer></app-footer>
` ,
styles: []
})
export class ValidUserLayoutComponent implements OnInit {
app.component.html
<router-outlet></router-outlet>
http://localhost:4400/home/1 //第一次点击路由就ok了
http://localhost:4400/home/2 //路由正在追加
解决方案
尝试这个。
<a [routerLink]="['/home', result2.value]" routerLinkActive="on">
推荐阅读
- c++ - 使用 Arduino Uno 作为 ISP 无法将代码从 Arduino IDE 上传到自定义 ESP32 WROOM 32
- amazon-sns - Aws SNS 仅在第一次通知电子邮件的打开跟踪 - 未在后续电子邮件打开时触发
- r - 如何为使用 renderReactable 创建的表赋予标题
- kubernetes - 我可以对节点设置 CPU 限制吗?
- php - 从 wordpress 编辑主题
- linux - 用于移动具有特定名称的前 N 个文件的 Bash 脚本
- java - 故事进度条仅向我显示来自 firebase 数据库的数组列表的最后一张图片
- javascript - 使用 Enzymes 进行 React 组件渲染功能测试
- google-apps-script - 错误:在 ID 为 45 的对象上调用方法 getPageElementRange 时无法找到目标对象
- python - 从 .pb 文件加载 TensorFlow 模型