2017-01-04 2 views
1

isActive für routeparam Pfad zu testen, wie: AngularJS/app/index.php #/Seiten-editmenus/36aktive Klasse Menüpunkt in AngularJS für routeparam Pfad

meine index.php

<li ng-class="{ active : isActive('/pages-menus') || isActive('/pages-addmenus') || isActive('/pages-editmenus/{{lpath}}')}"><a href="#pages-menus"> Menus</a></li> 

wo LPATH ist $ routescope variable Controller in

$rootScope.lpath = $routeParams.id; 

auch für ID 36 index.php ersetzen wie:

<li ng-class="{ active : isActive('/pages-menus') || isActive('/pages-addmenus') || isActive('/pages-editmenus/36')}"><a href="#pages-menus"> Menus</a></li> 

aber es hat keine Klasse hinzugefügt bedeutet Bedingung ist falsch. Wenn ich mit einem statischen Wert (ex: 36) anstelle von lpath versuche, funktioniert es gut. also was könnte hier wrint sein?

Antwort

0

Sie setzen Ihre Variable in $rootScope, Sie können es nicht so auf Ihrer Seite verwenden.

ich in Ihrem Fall denke, die beste Option wäre es $scope zu bewegen:

$scope.lpath = $rootScope.lpath; 

I isActive('/pages-editmenus/{{$rootScope.lpath}}') erraten:

$scope.lpath = $routeParams.id; 

Andernfalls Sie $rootScope.lpath zu Ihrem Umfang beeinflussen können sollte auch funktionieren, aber ich habe es nicht versucht. Ich bevorzuge avoiding using $rootScope.

Verwandte Themen