Jade - 如果定义,只输出 属性?

Jade - Only output a property if defined?

我相信有人会介绍这个:

id="#{data.id}"

输出

<input id="undefined"> //if I haven't defined id

需要

//If ID is undefined
<input>
//If ID is defined
<input id="someID">

您可以简单地编码:

input(id= data.id)

idundefined 时,一个假值,Jade 不会将属性添加到标签中。当您设置 属性 属性(如 checkedselected.

时,此功能也很有用

另一种选择是使用 &attributes 语法:

- var attrs = data.id ? {id: data.id} : null;
input&attributes(attrs)

您可以将代码封装在 if ... else 语句中,这样就可以封装未定义 id 的情况:

id = data.id
if id === "undefined"
  input#someID
else
  input#id