是否可以在汇编中使用Swig的块标签?

时间:2014-08-13 06:47:52

标签: assemble swig-template

使用assemble-swig,这是我的模板:

<!doctype html><html lang="it">

<head>
{% include "src/templates/partials/html_header.swig" %}
</head>
<body>
{% include "src/templates/partials/body_header.swig" %}

<header class="articleHeader intro"><div class="inner">
{% block articleheader %}{% endblock %}
</div></header>

<div class="body"><div class="inner">

<article class="main{% if nosidebar %} noSideBarArticle{% endif %}">

{% block content %}{% endblock %}

</article>

{% block sidebar %}{% endblock %}
</div></div>

{% include "src/templates/partials/body_footer.swig" %}
{% block javascript %}{% endblock %}
 </body>
</html>

这是我的页面:

---
title: "test"
---

{% block articleheader %}

<h1>Article Header!</h1>

{% endblock %}

{% block content %}

<p>this is the content!</p>

{% endblock %}

结果:页面中没有数据显示

(content of html_header and body_header goes here...)

<header class="articleHeader intro"><div class="inner">

</div></header>


<div class="body"><div class="inner">

<article class="main">

</article>

(content of html_header and body_footer goes here...)

仅当我在模板中使用标记{{body}}时,才会插入页面的所有内容,但不尊重block标记。

1 个答案:

答案 0 :(得分:1)

是的,如果你不使用Assemble的布局似乎是可能的。

我让它在配置中将layout属性设置为false

assemble: {
  options: {
    engine: 'swig',
    ...
    layout: false,
    ...

然后在每个文件中添加:

 {% extends 'src/layouts/default.swig' %}

位于内容的顶部。