Объединение файлов, чтобы иметь только один вызов для всех файлов CSS с Assetic на Symfony 2 - PullRequest
3 голосов
/ 06 ноября 2011

Я использую сборку на Symfony 2 и сжимаю все свои файлы CSS и JS благодаря YUI.ВСЕ работает отлично, но в среде prod у меня есть несколько вызовов для загрузки всех сжатых файлов.На самом деле, я подумал, что сборка может объединить все CSS-файлы (и JS-файлы) для единственного вызова уникального файла (один для CSS, другой для JS), и это возможно для каждой страницы?*

Я не нахожу документацию по этому поводу ... Есть идея?Спасибо!

Ответы [ 2 ]

4 голосов
/ 06 ноября 2011

Как описано в документации , вы также можете объединить несколько файлов в один. Это помогает уменьшить количество HTTP-запросов, что очень хорошо для производительности интерфейса.

Вам просто нужно использовать этот синтаксис:

{% javascripts
    '@AcmeFooBundle/Resources/public/js/*'
    '@AcmeBarBundle/Resources/public/js/form.js'
    '@AcmeBarBundle/Resources/public/js/calendar.js'
%}
<script src="{{ asset_url }}"></script>
{% endjavascripts %}
2 голосов
/ 23 января 2014

Для объединения CSS-файлов в один в среде разработчика

php app/console cache:clear --env=dev --no-debug

Просмотр объединенного файла, который подается при запросе страницы

// app_dev.php
$kernel = new AppKernel('dev', false); 
// Setting the second parameter to false turns of debugging

Убедитесь, что вы объединяете активы

{% javascripts
    '@AcmeFooBundle/Resources/public/js/*'
    '@AcmeBarBundle/Resources/public/js/form.js'
    '@AcmeBarBundle/Resources/public/js/calendar.js'
%}
<script src="{{ asset_url }}"></script>
{% endjavascripts %}

То же самое следует для производственной среды

...