AngularJS zeigt div basierend auf url / condition

8

Ich habe ein globales Menü in einer AngularJS App. Ich möchte keine Links auf bestimmten Pfaden zeigen. Ich habe folgendes versucht. In meinem Controller:

%Vor%

Aus meiner Sicht:

%Vor%

Aber ich kann es nicht zur Arbeit bringen. Irgendwelche Ideen?

Gibt es auch eine Möglichkeit, den aktuellen Pfad auf der Seite irgendwie auszudrucken?

    
Anders 14.01.2014, 13:33
quelle

2 Antworten

12

Sie sollten sich "ng-show" und "ng-hide" ansehen. Sie können verwendet werden, um Inhalte auf einer Seite ganz einfach anzuzeigen und auszublenden. Ein Beispiel wäre:

%Vor%

Sie können "myBoolean" durch einen Aufruf einer Funktion im Gültigkeitsbereich ersetzen, die den Pfad prüft oder die Aufgabe ausführt, die Sie überprüfen müssen. Ich glaube, das sollte mehr oder weniger tun, was Sie suchen! Weitere Informationen zu ng-show finden Sie hier .

Falls die Dokumentation oder mein Beispiel schwer zu lesen sind, habe ich schnell einen Plunkr für Sie geschrieben ( Ссылка ) ). Im Grunde zeigt dies nur, wie man die ng-hide / ng-show-Direktive benutzt (sie sind die gleichen, nur Gegensätze). Die Schlüsselroutine, die ich geschrieben habe, ist:

%Vor%

Ersetzen Sie diese Logik einfach mit dem, was Sie am Standort überprüfen möchten, und sie sollte korrekt angezeigt werden. Das wirklich schöne an der Verwendung dieser speziellen Anweisung ist, dass Sie leicht CSS-Animationen / -Übergänge unterstützen können, mit denen Sie Ihr Element innerhalb oder außerhalb der Seite sanft ausblenden können, während Sie es ausblenden und anzeigen. Hoffe das hilft alles. Viel Glück!

    
drew_w 14.01.2014, 13:37
quelle
4

Zitieren Sie einfach die Zeichenfolge, mit der Sie Ihre Variable vergleichen:

%Vor%

Wie von drew_w gesagt, sollten Sie ng-show ausprobieren, da Sie $location verwenden, erstellen Sie wahrscheinlich eine Einzelseiten-App, bei der das erneute Laden des DOM weniger effizient ist als das bloße Ausblenden oder Anzeigen / p>

Um es zu drucken, legen Sie einfach

%Vor%

überall wo der Controller mit Ihrem $scope.location wirkt.

    
Jerska 14.01.2014 13:35
quelle

Tags und Links