自闭标签后的 Jade 内容

Jade content following self closing tag

我正在将一些 HTML 从先前存在的应用程序转换为 Jade。我有一块 HTML 看起来像这样:

<div class="checkbox">
  <label>
    <input type="checkbox" name="data[day][sunday]" value="sunday">
  Sunday
  </label>
</div>

对应的 Jade 是什么?理想情况下它看起来像这样:

div(class="checkbox"):
  label 
    input(type="checkbox" name="data[day][sunday]" value="sunday") 
    Sunday

但是因为input是一个自闭标签,所以我不能在它后面加上文字"Sunday"

我用另一种完全符合我需要的方式写这个没有问题,但我想知道如何准确地解决这个问题。

谢谢!

你可以使用jade中的|来解决这个问题。

| 之后的任何文本都将被解释为父项

中的文本
div(class="checkbox"):
  label 
    input(type="checkbox" name="data[day][sunday]" value="sunday") 
    | Sunday

你也可以像这样使用非自闭合标签

div
  div
    span hello there
  | and plain text

会导致 html 像这样

<div>
  <div>
    <span>hello there</span>
  </div>
  and plain text
</div>

记住在Jade里面直接写HTML是完全有效的,你也可以这样解决这个问题。

div(class="checkbox"):
  label.
    <input type="checkbox" name="#{data[day][sunday]}" value="sunday"> 
    Sunday

Jade 中标记后的 . 会将所有内容视为文本。