Angular 父模板`<router-outlet>` 显示模板两次

如何解决Angular 父模板`<router-outlet>` 显示模板两次

我有一个它的孩子正在共享的父模板,我根据某些条件在 app.component.html 中显示该父模板。

现在我面临的问题是父模板在子组件之前显示两次 参考图片上传

enter image description here

enter image description here

这是我的代码

home.component.html

<div class="container register">
  <div class="row">
      <div class="col-md-3 register-left">
          <img src="https://image.ibb.co/n7oTvU/logo_white.png" alt=""/>
          <h3>Welcome</h3>
          <p>You are 35 seconds away from earning your own money!</p>
          <input type="submit" name="" value="Login"/><br/>
      </div>
      <div class="col-md-9 register-right">
          <ul class="nav nav-tabs nav-justified" id="myTab" role="tablist">
              <li class="nav-item">
                  <a class="nav-link active" id="home-tab" data-toggle="tab" href="#home" role="tab" aria-controls="home" aria-selected="true">Employee</a>
              </li>
              <li class="nav-item">
                  <a class="nav-link" id="profile-tab" data-toggle="tab" href="#profile" role="tab" aria-controls="profile" aria-selected="false">Hirer</a>
              </li>
              <li class="nav-item">
                  <a class="nav-link" id="profile-tab" data-toggle="tab" href="#profile" role="tab" aria-controls="profile" aria-selected="false">Hirer</a>
              </li>
          </ul>
           <div class="tab-content" id="myTabContent">
               <div class="tab-pane fade show active" id="home" role="tabpanel" aria-labelledby="home-tab">
                  <h3 class="register-heading">Add your project</h3>
                  <div class="row register-form">
                    <router-outlet></router-outlet>
                  </div>
               </div>
           </div>
      </div>
 </div>
</div>                            

home-routing.module.ts

import { NgModule } from '@angular/core';
import { Routes,RouterModule } from '@angular/router';
import { AuthGuard } from '../../../helpers/auth.gaurd';
import { Role } from '../../../data/schema/role';
import { HomeComponent } from './home.component';
import { ListProjectCategoryComponent } from '../project-folder/projectCategory/list-project-category/list-project-category.component';
import { CreateProjectCategoryComponent } from '../project-folder/projectCategory/create-project-category/create-project-category.component';
import { DetailsProjectCategoryComponent } from '../project-folder/projectCategory/details-project-category/details-project-category.component';

const routes: Routes = [{ 
  path: 'admin',component: HomeComponent,canActivate: [AuthGuard],data: { roles: [Role.Admin]},children: [
{ path: 'projectCategory/list',component: ListProjectCategoryComponent
},{ path: 'projectCategory/create',component: CreateProjectCategoryComponent
},{ path: 'projectCategory/details',component: DetailsProjectCategoryComponent
}]  }];

@NgModule({
  imports: [RouterModule.forChild(routes)],exports: [RouterModule]
})

export class HomeRoutingModule { }

app.component.ts

<app-web-header></app-web-header>
 <div *ngIf="isAdminComponent"> 
    <app-home ></app-home> 
</div>
<div *ngIf="!isAdminComponent"> 
<app-user-home></app-user-home>
</div>
<app-web-footer></app-web-footer>

这里是

app-routing-module.ts

enter image description here

请检查是否需要任何其他代码来检查问题。

解决方法

您的 HomeRoutingModule 告诉 Angular 使用 HomeComponent,因此它在同一个 router-outlet 中将其插入到 HomeComponent 中。删除 admin 路线并仅设置子路线,您应该很高兴。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其他元素将获得点击?
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。)
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbcDriver发生异常。为什么?
这是用Java进行XML解析的最佳库。
Java的PriorityQueue的内置迭代器不会以任何特定顺序遍历数据结构。为什么?
如何在Java中聆听按键时移动图像。
Java“Program to an interface”。这是什么意思?
Java在半透明框架/面板/组件上重新绘画。
Java“ Class.forName()”和“ Class.forName()。newInstance()”之间有什么区别?
在此环境中不提供编译器。也许是在JRE而不是JDK上运行?
Java用相同的方法在一个类中实现两个接口。哪种接口方法被覆盖?
Java 什么是Runtime.getRuntime()。totalMemory()和freeMemory()?
java.library.path中的java.lang.UnsatisfiedLinkError否*****。dll
JavaFX“位置是必需的。” 即使在同一包装中
Java 导入两个具有相同名称的类。怎么处理?
Java 是否应该在HttpServletResponse.getOutputStream()/。getWriter()上调用.close()?
Java RegEx元字符(。)和普通点?