Jade if else用于选择复选框的简写

时间:2016-01-12 06:37:29

标签: javascript node.js express pug

select.className(((#{obj.active} == 1) ? selected : disabled))

我不知道为什么这会给我一个错误Unexpected token =,对我来说逻辑很好。我必须在某处做错事。

1 个答案:

答案 0 :(得分:0)

您在这里有两个问题:

  1. 您正试图在表达式中使用interpolation,这既不需要又不起作用,并且
  2. 三元运算符的输出未引用,Jade / Pug会将其解释为变量而不是字符串。

请注意,此错误消息是由第一个问题引起的。

这是在此处使用的正确语句:

select.className( obj.active == 1 ? 'selected' : 'disabled' )

如果您的obj.active变量为1或0(或未定义),则考虑将其简化为三元运算符的“真实性”将同时拒绝0和undefined并解析第二个值:

select.className( obj.active ? 'selected' : 'disabled' )