我试图这样做:
body(
|{% case page.url %}
| {% when '/' %}
| class="hellopage"
| {% when page.url contains '/gallery/' %}
| class="gallerypage"
|{% endcase %}
)
这实际上是液体的{%..%}。
所以,它没有编译。如何在标签中编写多行属性?
答案 0 :(得分:1)
修改强>
问题是Pug编译器不喜欢属性中的{%
字符序列。在您的特定场景中,解决方法是转义换行符并将Liquid逻辑放在属性值字符串中:
body(class="\
{% case page.url %}\
{% when '/' %}\
hellopage\
{% when page.url contains '/gallery/' %}\
gallerypage\
{% endcase %}"
)
旧答案:
我认为您不需要管道符(|
)来执行此操作。 Pug在多行are supported上的属性。这样的事情就足够了:
body(
{% case page.url %}
{% when '/' %}
class="hellopage"
{% when page.url contains '/gallery/' %}
class="gallerypage"
{% endcase %}
)
应该有效,但尚未测试(由于缺少Liquid + Pug测试环境)。