Symfony assetic和命名资产,在prod环境中转储两次?
资产管理是最难理解IMHO的部分,即使是在与Symfony合作一年或更长时间之后。不管怎样,我一直在尝试:Symfony assetic和命名资产,在prod环境中转储两次?,symfony,assets,symfony-2.3,Symfony,Assets,Symfony 2.3,资产管理是最难理解IMHO的部分,即使是在与Symfony合作一年或更长时间之后。不管怎样,我一直在尝试: 资产: mybundle_front_js: 投入: -@MeMyBundle/Resources/public/jquery/dist/jquery.js -@MeMyBundle/Resources/public/bootstrap/js/affix.js -@MeMyBundle/Resources/public/bootstrap/js/alert.js -@MeMyBundle/
资产:
mybundle_front_js:
投入:
-@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
过滤器:[?uglifyjs2]
使用命名资产:
{%block javascripts%}
{%javascripts
“@mybundle\u front\u js”%}
{%endjavascripts%}
{%endblock%}
倾销:
php应用程序/控制台缓存:clear--env=prod
php应用程序/控制台断言:dump--env=prod
结果是两个文件,大小相同,内容相同:
%kernel.root\u dir%/../web/assetic/mybundle\u front\u js.js
%kernel.root_dir%/../web/js/055a364.js
是否有理由在prod环境中生成两个相同的文件?第一个文件
assetic/mybundle\u front\u js.js
是配置命名资产的结果文件。第二个文件是从模板内的assetic块使用的结果文件
如果您要在资产区块中使用两项资产:
{% block javascripts %}
{% javascripts
"@mybundle_front_js"
"@whateveer" %}
<script src="{{ asset_url }}"></script>
{% endjavascripts %}
{% endblock %}
{%block javascripts%}
{%javascripts
“@mybundle\u front\u js”
“@whateveer”%}
{%endjavascripts%}
{%endblock%}
您将在assetic/
文件夹中得到两个命名资产文件,在js/
文件夹中得到一个包含这两个文件内容的文件
猜测
assetic/
文件夹中还有文件的原因:您可以配置命名资产并干净地引用它们,而无需使用{%javascripts%}
块。这也有利于调试,请尝试使用--no debug
,不确定,但应防止生成/assets
文件夹。。。但只是一个猜测。