具有true / false问题的多个ng类

时间:2018-02-07 10:17:20

标签: javascript html angularjs

我正在使用这样的ng-class指令:

ng-class = "{
    'checked' : modal.isUserChecked(user.id),
    'disabled': modal.isDisabledUser(user.id),
    'checked': user.status === 'invited',
    'participator': user.status === 'participator'
}"

且表达式无效('checked''disabled'未添加)。

当将代码重写为对象数组时,表达式可正常工作

[{
    'checked': modal.isUserChecked(user.id)
} {
    'disabled': modal.isDisabledUser(user.id)
}]

但看起来没有必要(在很多情况下,带参数的简单对象就足够了)

2 个答案:

答案 0 :(得分:0)

试试这个 -

ng-class = "{
  'checked' : modal.isUserChecked(user.id) && user.status === 'invited', 
  'disabled' : modal.isDisabledUser(user.id),
  'participator' : user.status === 'participator'
}"

答案 1 :(得分:0)

你不应该为同一个班级使用2个不同的条件,如果你必须这样做,将条件合二为一: -

实施例

ng-class = "{
  'checked' : modal.isUserChecked(user.id) && user.status === 'invited', 
  'disabled' : modal.isDisabledUser(user.id),
  'participator' : user.status === 'participator'
}"

OR

ng-class = "{
  'checked' : modal.isUserChecked(user.id) || user.status === 'invited', 
  'disabled' : modal.isDisabledUser(user.id),
  'participator' : user.status === 'participator'
}"

有关更多内容,请查看本文以查看ng-class的所有用例

https://scotch.io/tutorials/the-many-ways-to-use-ngclass