ng中的三元表达式单击angularjs

ng中的三元表达式单击angularjs,angularjs,ternary-operator,conditional-operator,Angularjs,Ternary Operator,Conditional Operator,我想知道是否可以在ng click属性中使用三元表达式如果可能,我不想使用单独的控制器功能 这是一个双按钮切换设置-我可以让一个简单的切换工作,但不想第二次点击“关闭”按钮打开 ng中的三元单击不起作用(注意ng中的三元类起作用): 在…上 下面是一个更完整的JSFIDLE: 您没有使用三元表达式执行任何操作。要使其有用,请将其指定为: {{ var1 }} {{ var2}} <button ng-click="var1 = (allOn2==true ? allOn2 :

我想知道是否可以在ng click属性中使用三元表达式如果可能,我不想使用单独的控制器功能

这是一个双按钮切换设置-我可以让一个简单的切换工作,但不想第二次点击“关闭”按钮打开

ng中的三元单击不起作用(注意ng中的三元类起作用):


在…上
下面是一个更完整的JSFIDLE:

您没有使用三元表达式执行任何操作。要使其有用,请将其指定为:

{{ var1 }} {{ var2}}
<button
    ng-click="var1 = (allOn2==true ? allOn2 : !allOn2)"
    ng-class="{'btn-green-on':allOn2, 'btn-green-off' : !allOn2}">
ON</button>
{{var1}}{{var2}
在…上

我不确定如何为ng类使用三元表达式…

您可以使用一些东西作为三元表达式的解决方法

 ng-click="(AppliedApps!=null && Collapse('CollapsedAppliedApplications')) || 
(AppliedApps.length==0 && Collapse('CollapsedAppliedApplications'))">

为什么不直接使用ng switch?还没有了解ng switch,但通过简单的检查,它看起来更像是一个多选ng显示/隐藏。谢谢你。。。你说得对。我的提琴没有显示任何绑定allOn值的ng模型,就像在我的项目中一样。但我明白你的建议为什么有效。我想我被搞糊涂了,因为ng类要求你“什么都不做”,即只计算表达式来找到类。我需要在单击时显式地设置allOn的值,我认为这是通过表达式的求值实现的。谢谢这里有一个到更新的fiddle的链接:检查三元中的布尔值有点多余<代码>allOn2==真?allOn2:!allOn2只能是
allOn2=!allOn2
 ng-click="(AppliedApps!=null && Collapse('CollapsedAppliedApplications')) || 
(AppliedApps.length==0 && Collapse('CollapsedAppliedApplications'))">