我想这样做:
ng-hide="!globals.isAdmin && mapping.is_default"
但表达式的计算结果始终为false
。
我不想在$scope
.
我想这样做:
ng-hide="!globals.isAdmin && mapping.is_default"
但表达式的计算结果始终为false
。
我不想在$scope
.
如果您需要运行任意 JavaScript 代码,请使用控制器方法,或者您可以定义一个返回 true 或 false 的过滤器。
我刚刚测试过(应该先做),并且像ng-show="!a && b"
预期的那样工作。
ng-show
/ng-hide
只接受boolean
值。
对于复杂的表达式,最好使用控制器和范围来避免复杂化。
下面一个就可以了(不是很复杂的表达式)
ng-show="User=='admin' || User=='teacher'"
当两个条件中的任何一个返回 true(OR 操作)时,此处的元素将显示在 UI 中。
像这样,您可以使用任何表达式。
如果您没有太多表达式,这将起作用。
例子:ng-show="form.type === 'Limited Company' || form.type === 'Limited Partnership'"
对于比这更多的表达式,请使用控制器。
我通常会尽量避免使用 ng-show 和 ng-hide 的表达式,因为它们被设计为布尔值,而不是条件。如果我需要条件逻辑和布尔逻辑,我更喜欢使用 ng-if 作为第一个检查来放入条件逻辑,然后使用 ng-show 和 ng-hide 添加对布尔逻辑的额外检查
但是,如果您想对 ng-show 或 ng-hide 使用条件,这里有一些示例的链接:使用 ng-if、ng-show、ng-hide、ng-include、ng-switch 进行条件显示
上述一些答案对我不起作用,但确实如此。以防万一其他人有同样的问题。
ng-show="column != 'vendorid' && column !='billingMonth'"