Pug/Jade - input是一个自闭元素:<input />但包含嵌套内容?

lau*_*kok 10 javascript node.js express pug

我想像这样创建html:

<label class="radio-inline">
    <input type="radio" name="hidden" checked="" value="Visible"> Visible
</label>
Run Code Online (Sandbox Code Playgroud)

帕格/玉:

label.radio-inline
    input(type="radio", name="hidden", value="0", checked="") Visible
Run Code Online (Sandbox Code Playgroud)

但是我收到一个错误:

input是一个自闭元素:但包含嵌套内容.

这是什么意思?我怎么解决这个问题?

Iso*_*Iso 10

使用Jade/Pug有多种方法可以做到这一点.第一种方法是使用管道char(需要一个新行):

input
  | text
Run Code Online (Sandbox Code Playgroud)

第二种方法是使用标签插值(你可以保持在同一行):

#[input] text
Run Code Online (Sandbox Code Playgroud)

所以另一个Jethro的答案是:

label.radio-inline
  #[input(type='radio', name='hidden', value=0, checked='')] Visible
Run Code Online (Sandbox Code Playgroud)

请注意,您甚至可以这样做:

 label #[input] text
Run Code Online (Sandbox Code Playgroud)

这会产生:

<label>
  <input/> text 
</label>
Run Code Online (Sandbox Code Playgroud)


小智 6

你需要这样:

label.radio-inline
  input(type='radio', name='hidden', value=0, checked='')
  | Visible
Run Code Online (Sandbox Code Playgroud)

放在Visible同一行input,使得帕格将其解释为input元素的内部HTML .