2013-04-03 41 views
2

我想要做的就是將scripts區塊添加到dropdown.swigscripts區塊中template.swig
我的使用模式可能是錯誤的。我有一個使用ejs-locals模板引擎的工作代碼,但我想切換到swig
如何將包含的部分插入代碼放入父代的塊中?

下面的代碼:

<!-- template.swig, to be extended --> 
<body> 
    <header> 
    {% include "navbar.swig" %} 
    </header> 
    <!-- template scripts --> 
    <script src="/scripts/jquery.min.js"></script> 

    {% block body %}{% endblock %} 

    <!-- child scripts --> 
    {% block scripts %}{% endblock %} 
</body> 


<!-- index.swig, to be rendered--> 
{% extends "template.swig" %} 

{% block content %} 
<div class="container row-fluid"> 
    body 
</div> <!-- row-fluid --> 
{% endblock %} 


<!-- navbar.swig, to be included--> 
<div class="navbar navbar-fixed-top"> 
    <!-- bootstrap navbar stuff --> 
    <!-- ... --> 

    {% if not hideDropDown %} 
     {% include "dropdown.swig" %} 
    {% endif %} 
</div> 


<!-- dropdown.swig, to be included--> 
<div class="btn-group pull-right"> 
    <!-- bootstrap drop down menu stuff --> 
    <!-- ... --> 
</div> 

{% block scripts %} 
{% autoescape false %} 
<script src="/scripts/bootstrap-dropdown.js"></script> 
<script> 
    $(document).ready(function() { 
    $('.dropdown-toggle').dropdown(); 
    }); 
</script> 
{% endautoescape %} 
{% endblock %} 
+0

經過一番研究,似乎'twig'的'embed'標籤是一個答案,另一種方法是在我的樹枝中使用'extends'而不是'include'。 – leesei

回答

1

我們要做多發於swig延伸,見Issue 47(樣本代碼)。

誰能說清楚embed標籤是否能解決我的需求?

相關問題