Ich versuche, HTML mit den von AngularJS bereitgestellten Funktionen ng-show
und ein- / auszublenden .ng-hide
Laut Dokumentation ist die jeweilige Verwendung für diese Funktionen wie folgt:
ngHide - {Ausdruck} - Wenn der Ausdruck wahr ist, wird das Element angezeigt bzw. ausgeblendet. ngShow - {Ausdruck} - Wenn der Ausdruck wahr ist, wird das Element angezeigt bzw. ausgeblendet.
Dies funktioniert für den folgenden Anwendungsfall:
<p ng-hide="true">I'm hidden</p>
<p ng-show="true">I'm shown</p>
Wenn wir jedoch einen Parameter aus einem Objekt als Ausdruck verwenden, erhalten die ng-hide
und ng-show
den korrekten true
/ false
Wert, aber die Werte werden nicht als Boolescher Wert behandelt. Geben Sie daher immer Folgendes zurück false
:
Quelle
<p ng-hide="{{foo.bar}}">I could be shown, or I could be hidden</p>
<p ng-show="{{foo.bar}}">I could be shown, or I could be hidden</p>
Ergebnis
<p ng-hide="true">I should be hidden but I'm actually shown</p>
<p ng-show="true">I should be shown but I'm actually hidden</p>
Dies ist entweder ein Fehler oder ich mache das nicht richtig.
Ich kann keine relativen Informationen zum Verweisen auf Objektparameter als Ausdrücke finden, also hoffte ich, dass jemand mit einem besseren Verständnis von AngularJS mir helfen kann?