AngularJS: ng-show / ng-hide funktioniert nicht mit der Interpolation `{{}}`

Ich versuche, HTML-Code mit dem Symbol ein- / auszublendenng-show undng-hide Funktionen bereitgestellt vonAngularJS.

Laut Dokumentation lauten die jeweiligen Verwendungszwecke für diese Funktionen wie folgt:

ngHide - {expression} - Wenn der Ausdruck wahr ist, wird das Element angezeigt bzw. ausgeblendet. ngShow - {expression} - 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>

Sollten wir jedoch einen Parameter aus einem Objekt als Ausdruck verwenden, dann ist dasng-hide undng-show sind die richtigen gegebentrue/false value, aber die Werte werden nicht als Boolescher Wert behandelt. Geben Sie daher immer einen Wert zurückfalse:

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 Referenzieren von Objektparametern als Ausdrücke finden, also habe ich gehofft, dass jemand mit einem besseren Verständnis von AngularJS mir helfen kann?

Antworten auf die Frage(7)

Ihre Antwort auf die Frage