Angularjs 为什么特定的ng类语法不起作用?

Angularjs 为什么特定的ng类语法不起作用?,angularjs,ng-class,Angularjs,Ng Class,更新:原始问题表明第四个示例(下面)不起作用。然而,这是正确的语法(为什么我的语法不起作用,我从来没有弄明白)。因此,即使这个问题不再成立,我还是将它留作参考,因为它确实在一个方便的地方显示了angular的ng类的不同语法(还要注意语法3和4实际上是相同的)。此外,还有一个问题 我使用的是angularjsv1.5.0。我需要一个条件类设置,所以我从我通过google找到的东西开始(见我最后一个不起作用的例子)。当它不起作用时,我选择了其他方法,每种方法都有效 所以我的问题是为什么我的最后一

更新:原始问题表明第四个示例(下面)不起作用。然而,这是正确的语法(为什么我的语法不起作用,我从来没有弄明白)。因此,即使这个问题不再成立,我还是将它留作参考,因为它确实在一个方便的地方显示了angular的ng类的不同语法(还要注意语法3和4实际上是相同的)。此外,还有一个问题


我使用的是
angularjsv1.5.0
。我需要一个条件类设置,所以我从我通过google找到的东西开始(见我最后一个不起作用的例子)。当它不起作用时,我选择了其他方法,每种方法都有效

所以我的问题是为什么我的最后一个例子不起作用

有效

data-ng-class = "[ 'A' ,  my_array[0]=='b'?'B':'C' ]"
data-ng-class = "[ 'A' , { 'b' : 'B' ,
                           'c' : 'C' ,
                           'd' : 'D' ,
                           'e' : 'E' ,
                           'f' : 'F'
                          }[my_array[0]]
                 ]"
data-ng-class  = "[ 'A' , { 'B' : (my_array[0] == 'b') 
                          }
                  ]"
有效

data-ng-class = "[ 'A' ,  my_array[0]=='b'?'B':'C' ]"
data-ng-class = "[ 'A' , { 'b' : 'B' ,
                           'c' : 'C' ,
                           'd' : 'D' ,
                           'e' : 'E' ,
                           'f' : 'F'
                          }[my_array[0]]
                 ]"
data-ng-class  = "[ 'A' , { 'B' : (my_array[0] == 'b') 
                          }
                  ]"
有效

data-ng-class = "[ 'A' ,  my_array[0]=='b'?'B':'C' ]"
data-ng-class = "[ 'A' , { 'b' : 'B' ,
                           'c' : 'C' ,
                           'd' : 'D' ,
                           'e' : 'E' ,
                           'f' : 'F'
                          }[my_array[0]]
                 ]"
data-ng-class  = "[ 'A' , { 'B' : (my_array[0] == 'b') 
                          }
                  ]"
不起作用:(更新:这确实起作用……但我将其留作参考)


请提供一个复制问题的演示。。。。这个语法看起来正确吗。。。如果你认为这种语法应该有效,那么这告诉我一些重要的事情…不是很确定。我从来没有混合过数组/对象。。。。我会将最后一个更改为仅一个映射对象,并使
{'a':true,'B':my_array[0]='B'…'F'…}
并忘记该数组。或者使用一个控制器函数,将业务逻辑放在它真正应该做的地方,但是plunker按预期工作。。。所以现在我不太确定。。。我要休息一下。。。我可能会删除这篇文章,因为显然还有其他事情正在发生…也就是请提供一个演示,重现这个问题。。。。这个语法看起来正确吗。。。如果你认为这种语法应该有效,那么这告诉我一些重要的事情…不是很确定。我从来没有混合过数组/对象。。。。我会将最后一个更改为仅一个映射对象,并使
{'a':true,'B':my_array[0]='B'…'F'…}
并忘记该数组。或者使用一个控制器函数,将业务逻辑放在它真正应该做的地方,但是plunker按预期工作。。。所以现在我不太确定。。。我要休息一下。。。我可能最终会删除这篇文章,因为很明显还有其他事情正在发生…也被称为