我在symfony2项目中使用了相同数量的资产。如果我升级插件版本,则必须修改所有文件。那么,使用Symfony2框架在twig模板上添加资产的最佳方法是什么?
{% block javascriptCodigo %}
{{ parent() }}
<script type="text/javascript" src="{{ asset('bundles/Bundle/js/ajaxLoadTables/ajaxLoadTables.js') }}"></script>
<script type="text/javascript" src="{{ asset('bundles/Bundle/js/jquery-loadmask/jquery.loadmask.min.js') }}"></script>
<script type="text/javascript" src="{{ asset('bundles/Bundle/js/jquery-validate/jquery.validate.min.js') }}"></script>
<script type="text/javascript" src="{{ asset('bundles/Bundle/js/jquery-validate/localization/messages_es.js') }}"></script>
<script type="text/javascript" src="{{ asset('bundles/Bundle/js/bootstrap3-dialog/js/bootstrap-dialog.min.js') }}"></script>
...
答案 0 :(得分:2)
最好的方法是使用AsseticBundle
。所有内容都在doc中详细说明。
通常,虽然启用了资产,但您可以执行类似
的操作{% block javascripts %}
{{ parent() }}
{% javascripts
'@AcmeDemoBundle/Resources/public/js/knockout.jquery-bindings.js'
'@AcmeDemoBundle/Resources/public/js/jquery.validate.min.js'
'@AcmeDemoBundle/Resources/public/js/jquery.validate.password.js'
%}
<script src="{{ asset_url }}"></script>
{% endjavascripts %}
{% endblock %}
这会将您的所有资产合并到一个文件中。您也可以使用stylesheets
函数将其用于样式表。还可以通过简单的方法为您的查询网址(资产)添加版本号,这将解决浏览器缓存问题。