0
將接受任何JavaScript的解決方案,但是最好的答案可能使用angular2RouterLinkActive做工作ngFor
我試圖動態地根據API調用來創建我的導航欄是一個。
問題是如果另一個li(child)處於活動狀態,我希望父項li具有活動類。
下面的代碼工作是什麼,我希望它做的,但並不動態加載
<nav>
<ul>
<li>
<a (click)="togglePatientSideSearch()"><i class="fa fa-lg fa-fw fa-search"></i> <span class="menu-item-parent">Patient Search</span></a>
</li>
<li data-nav-target="1" [routerLinkActive]="['active']" [routerLinkActiveOptions]="{ exact: false }">
<a (click)="toggleNavMenuParentSelected(1)" title="Dashboard"><i class="fa fa-lg fa-fw fa-home"></i> <span class="menu-item-parent">Payroll</span>
<b class="collapse-sign">
<em class="fa fa-plus-square-o"></em>
</b>
</a>
<ul>
<li [routerLinkActive]="['active']">
<a [routerLink]="['/payroll/summary']" title="Payroll Summary"><span class="menu-item-parent">Summary</span></a>
</li>
<li [routerLinkActive]="['active']">
<a [routerLink]="['/payroll/daily']" title="Payroll Daily"><span class="menu-item-parent">Daily</span></a>
</li>
</ul>
</li>
</nav>
下面的代碼是什麼行不通,我試圖解決!
<nav>
<ul *ngIf="navigationMenu">
<li *ngFor="let nav of navigationMenu; let i = index;" [attr.data-nav-target]="nav.logo && !nav.children ? null : i" [attr.routerLinkActiveOptions]="nav.logo && !nav.children ? null : { exact: false }" [attr.routerLinkActive]="nav.logo && !nav.children ? null : ['active']" >
<a *ngIf="nav.logo && !nav.children" (click)="navigationClicked(nav)"><i class="{{nav.logo}}"></i> <span class="menu-item-parent">{{nav.name}}</span></a>
<a *ngIf="nav.logo && nav.children" (click)="toggleNavMenuParentSelected(i)" title="Dashboard">
<i class="fa fa-lg fa-fw fa-home"></i> <span class="menu-item-parent">{{nav.name}}</span>
<b class="collapse-sign">
<em class="fa fa-plus-square-o"></em>
</b>
</a>
<ul *ngIf="nav.children">
<li [routerLinkActive]="['active']" *ngFor="let child of nav.children;">
<a [routerLink]="['/home']" title="Home"><span class="menu-item-parent">{{child.name}}</span></a>
</li>
</ul>
</li>
</ul>
</nav>
我加載在一個對象,同時呼籲navigationMenu整個導航欄。 下面是我想讓它看起來像什麼樣的動態加載!(忽略不同的名字)
或許這是與這個已知的錯誤:https://github.com/angular/angular/issues/14227 – mxii
我想這個問題是在新的角度,更新軟件包最新,還嘗試刪除[]標記,如'routerLinkActive =「active」'和'routerLink =「/ user」' –