在Angular中,是否有一种方法可以在页面加载时更改某个变量的值?

时间:2018-07-31 19:12:14

标签: html angular angular5 frontend

我有一个带有3个定位标记的导航栏。单击锚标记后,与之关联的某些组件将可见。而与其他锚标记关联的组件则被隐藏。 (即一次只能激活一个)。我的问题是,只有在单击导航栏中的某个项目时才会显示这些组件。 ((点击)=“ ...”) 有没有一种方法可以在页面加载时初始化a ='Y'? (不使用JavaScript)

  <nav>
        <ul>
          <li><a href="#" (click)="a='Y'; b='N'; c='N'">Title a</a></li>
          <li><a href="#" (click)="a='N'; b='Y'; c='N'">Title b</a></li>
          <li><a href="#" (click)="a='N'; b='N'; c='Y'">Title c</a></li>
        </ul>
      </nav>

<ng-container *ngIf = "a==='Y'"> {some of a's components here....} </ng-container>

<ng-container *ngIf = "b==='Y'"> {some of b's components here....} </ng-container>

<ng-container *ngIf = "c==='Y'"> {some of c's components here....} </ng-container>

1 个答案:

答案 0 :(得分:1)

您在这里所做的违反了Angular的最佳做法。

请参阅角度路由:AsyncTask

此外,为什么不将任何初始化代码放入控制器?