gpt4 book ai didi

symfony - 从包含的 Twig 模板中干净地添加 JS 和 CSS

转载 作者:行者123 更新时间:2023-12-03 23:34:12 24 4
gpt4 key购买 nike

我正在寻找是否有一种干净的方法可以从包含的模板中添加 JS 和 CSS。

因此,例如,如果 layout.html.twig 具有:

{% include 'GenericBundle:Generic:page.html.twig' with {'data': data} %}
...
{% block javascript %}

{% javascripts
'@GenericBundle/Resources/public/js/app/jquery/jquery.min.js'
'@GenericBundle/Resources/public/js/lib/bootstrap/bootstrap.min.js'
%}
<script src="{{ asset_url }}"></script>
{% endjavascripts %}

{% endblock %}

在通用包页面中,我想包含更多 Javascript,但将其添加到已建立的 Javascript 块中以保持 HTML 和 JS 最佳实践。

有没有干净的方法来做到这一点?我正在使用 Symfony2,并且可能会使用 Singletons 之类的方法将解决方案拼凑在一起,但是如果有可用的方法,我宁愿使用一种更清洁的方法。

最佳答案

我知道我参加聚会有点晚了,但是使用 Twig 1.2,您可以使用 use标签和 block功能:

GenericBundle:Generic:page.html.twig

{% block javascripts %}
<script src="..."></script>
{% endblock %}
{% block included_content %}
Bar
{% endblock %}

layout.html.twig
{% use 'GenericBundle:Generic:page.html.twig' with javascripts as page_javascripts %}

{% block javascript %}

{% javascripts
'@GenericBundle/Resources/public/js/app/jquery/jquery.min.js'
'@GenericBundle/Resources/public/js/lib/bootstrap/bootstrap.min.js'
%}
<script src="{{ asset_url }}"></script>
{% endjavascripts %}
{{ block('page_javascript') }} // Don't forget the 'braces'

{% endblock %}

...
{{ block('included_content') }} // Don't forget the 'braces'

关于symfony - 从包含的 Twig 模板中干净地添加 JS 和 CSS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12682968/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com