资产管理是IMHO最难理解的部分,即使在Symfony工作了一年或更长时间后也是如此。不管怎样,我是在用named assets做实验
assets:
mybundle_front_js:
inputs:
- @MeMyBundle/Resources/public/jquery/dist/jquery.js
- @MeMyBundle/Resources/public/bootstrap/js/affix.js
- @MeMyBundle/Resources/public/bootstrap/js/alert.js
- @MeMyBundle/Resources/public/bootstrap/js/button.js
- @MeMyBundle/Resources/public/bootstrap/js/carousel.js
- @MeMyBundle/Resources/public/bootstrap/js/collapse.js
- @MeMyBundle/Resources/public/bootstrap/js/dropdown.js
- @MeMyBundle/Resources/public/bootstrap/js/modal.js
- @MeMyBundle/Resources/public/bootstrap/js/tooltip.js
- @MeMyBundle/Resources/public/bootstrap/js/popover.js
- @MeMyBundle/Resources/public/bootstrap/js/scrollspy.js
- @MeMyBundle/Resources/public/bootstrap/js/tab.js
- @MeMyBundle/Resources/public/bootstrap/js/transition.js
filters: [?uglifyjs2]使用命名资源:
{% block javascripts %}
{% javascripts
"@mybundle_front_js" %}
<script src="{{ asset_url }}"></script>
{% endjavascripts %}
{% endblock %}转储它们:
php app/console cache:clear --env=prod
php app/console assetic:dump --env=prod结果是两个文件,大小相同,内容相同:
%kernel.root_dir%/../web/assetic/mybundle_front_js.js
%kernel.root_dir%/../web/js/055a364.js是否有理由在prod环境中生成两个相同的文件?
发布于 2014-03-29 17:03:59
第一个文件assetic/mybundle_front_js.js是配置命名资产的结果文件。第二个文件是从模板内的assetic块中使用的结果文件。
如果您要在assetic块中使用两个资产:
{% block javascripts %}
{% javascripts
"@mybundle_front_js"
"@whateveer" %}
<script src="{{ asset_url }}"></script>
{% endjavascripts %}
{% endblock %}最终在assetic/文件夹中有两个命名资源文件,在js/文件夹中有一个文件,其中包含这两个文件的内容。
猜测为什么在assetic/文件夹中也有这些文件:您可以配置命名的资产并清晰地引用它们,而无需使用{% javascripts %}块。
https://stackoverflow.com/questions/22721231
复制相似问题