3

我仍然掌握翡翠的窍门。以下标记有效,但它导致元素呈现在两条单独的行上。我希望链接和p.some_classname文本呈现在同一行,但不变成p.some_classname超链接。

for elem in elems
  a(href="/foo/#{var1}/bar/#{var2}").baz.i.icon-cog
  p.some_classname= elem.id_1 + ' ' + elem.id_2

这可能吗?

4

3 回答 3

3

如果我正确理解您的请求,您希望链接和文本在同一行,每个元素一行。如果是这样,您只需要让段落包装文本并使用跨度:

for elem in elems
   p.some_classname 
       a(href="/foo/#{var1}/bar/#{var2}").baz.i.icon-cog
       span= elem.id_1 + ' ' + elem.id_2

这将生成(对于每个元素):

<p class="some_classname"><a href="/foo..." class="baz i icon-cog"><span>{val for id_1} {val for id_2}</span></p>

或者,您可以进一步简化并完全跳过跨度:

for elem in elems
   p.some_classname 
       a(href="/foo/#{var1}/bar/#{var2}").baz.i.icon-cog
       | #{elem.id_1} #{elem.id_2}

刚刚使用节点进行了测试,并且根据您想要的最终标记来工作。HTH。

于 2013-07-05T21:09:39.060 回答
0

据我所知,没有办法选择性地删除任何一对行之间的换行符。但是,如果在没有--prettyor-P选项的情况下运行jade,整个输出将折叠成一行。

于 2013-05-01T20:40:07.560 回答
0

加上马特的回答,您可以像这样单独使用IDCSS 类

p 
     | #[ObjectId1.class1 SomeText ]
     | #[ObjectId2.class2 #{jsonObject.attribute}]
于 2018-11-20T21:34:07.587 回答