ngIf angular和Angular 6中的组件删除

时间:2018-06-28 20:56:51

标签: html angular

我正试图摆脱仅一个特定组件中的页眉和页脚组件,并且不知道如何处理。我将应用程序组件视为index.html组件。当我创建一个新组件时,它们总是存在的,我需要弄清楚如何制作它,这样我的新组件才是空白。

1 个答案:

答案 0 :(得分:2)

您可以在Angular中观察路由器事件并根据路由执行某些操作。

示例: 您可以在您的应用程序组件中实现此功能。

ngOnInit() {
   this.router.events.forEach((event: NavigationEnd) => { // fires on each route change
     if (event instanceof NavigationEnd) {
       this.routeParam = event.url; // routeParam is a variable.
     }
     if (this.routeParam === '/') {
       // do something
     } else if (this.routeParam === '/login') {
       // do something
       // you can store a boolean in a service and use it to hide components.
       this.someService.myBoolean = true;
     } else {
       // do something
     }
   })
 }

在用户界面中,您可以使用该布尔值。

<myComponent *ngIf="!someService.myBoolean"><!-- someService should be 
  public -->
  <!-- component you want to hide -->
</myComponent>