导航到子组件时,父组件被重新初始化

问题描述

请帮助我。
我的第二个儿童路由器遇到问题
我的路线:

const routes: Routes = [
  {path: '',pathMatch: 'full',redirectTo: 'login'},{
    path: 'web',component: WebComponent,children: [
      {path: 'about',component: AboutComponent},{path: 'skills',component: SkillsComponent},]
  }
]

AboutComponent没有模块。
在WebComponent中,我有一个按钮:

<nav>
    <button [routerLink]="'/web/about'" (click)="clickButton()" [ngClass]="{animationStart: anim > 4}">About me</button>
</nav>
<div class="root">
    <router-outlet></router-outlet>
</div>

当我单击此按钮时,出现了一些问题。 WebComponent中的ngOnInit重新启动。为什么?我不想要这个,因为动画也再次运行。 请帮我。

GitHub:https://github.com/ZakuroPL/webCV/tree/main/src/app

解决方法

我不确定为什么要刷新整个Web组件,但是我知道,如果您有子级路由,则不必像about那样称呼它们,使用{{1 }} 只要 通常,您应该提供给路由器链接一个数组,所以也许实际上是在刷新页面

像这样[routerLink]="['about']"尝试一下,看看会发生什么

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...