我试图使用AngularJS提供的ng-show和ng-hide函数显示/隐藏一些HTML .
根据文档,这些功能的用途如下:
ngHide - {expression} - 如果表达式为truthy,则元素分别显示或隐藏.ngShow - {expression} - 如果表达式是真实的,那么元素将分别显示或隐藏.
这适用于以下用例:
<p ng-hide="true">I'm hidden</p>
<p ng-show="true">I'm shown</p>
Run Code Online (Sandbox Code Playgroud)
但是,如果我们使用来自对象的参数作为表达式,那么ng-hide并ng-show给出正确的true/ false值,但这些值不会被视为布尔值,所以总是返回false:
资源
<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>
Run Code Online (Sandbox Code Playgroud)
结果
<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>
Run Code Online (Sandbox Code Playgroud)
这可能是一个错误,或者我没有正确地执行此操作.
我找不到关于引用对象参数作为表达式的任何相关信息,所以我希望任何对AngularJS有更好理解的人都可以帮助我吗?