类绑定三元运算符

新手上路,请多包涵

我想将一些相当繁琐的逻辑应用于元素类。

 :class="{sportTypes.sports.indexOf(sport) > -1 ? 'is-primary' : 'is-outlined'}"

以上不起作用,而以下起作用:

 :class="{'is-outlined': sportTypes.sports.indexOf(sport) > -1}"

我收到以下错误

template syntax error - invalid expression:

任何想法第一部分有什么问题?

原文由 softcode 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 324
2 个回答

你有不必要的大括号。后一个表达式是一个对象,而第一个表达式只是一个返回字符串的三元表达式。

 :class="sportTypes.sports.indexOf(sport) > -1 ? 'is-primary' : 'is-outlined'"

原文由 Phil 发布,翻译遵循 CC BY-SA 3.0 许可协议

此处 文档中给出的语法一样,您可以使用以下数组语法来实现此目的:

 :class="[sportTypes.sports.indexOf(sport) > -1 ? 'is-primary' : 'is-outlined']"

原文由 Saurabh 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题