2015-07-03 148 views
1

我需要管理我的JavaScript文件版本,以避免用戶使用過時的文件。Symfony2:資產版本與資產

我我的配置文件,我定義爲:

assets_version: v2.1 

它運作良好,當我使用:

<script type="text/javascript" 
src="{{ asset('bundles/mybundle/js/my_js.js') }}"></script> 

但是,如果我還需要使用JavaScript的標籤,如:

{% javascripts 
'bundles/my_bundle/js/js1.js' 
'bundles/my_bundle/js/js2.js' 
%} 
<script type="text/javascript" src="{{ asset_url }}"></script> 
{% endjavascripts %} 

但是,然後版本不適用。還試過:

<script type="text/javascript" src="{{ asset(asset_url) }}"></script> 

但是,這複製了文件的基本路徑。有什麼好辦法做到這一點?

回答

1

使用:

{% javascripts 
    'bundles/my_bundle/js/js1.js' 
    'bundles/my_bundle/js/js2.js' 
%} 
<script type="text/javascript" src="{{ asset_url }}"></script> 
{% endjavascripts %} 

您需要使用生產控制器(app.php)(不調試)看到附加的資產版本。 (你必須甩掉你的資產太)

<script type="text/javascript" src="http://assets2.yoursite.com/js/youjs.js?v2.1"></script> 

在開發模式下,你可能有這樣的事情:

<script type="text/javascript" src="/app_dev.php/js/js1.js"></script> 
<script type="text/javascript" src="/app_dev.php/js/js2.js"></script> 
+0

你的意思是用<腳本類型= 「文/ JavaScript的」 SRC =「{{ASSET_URL }}「>? – Rolintocour

+0

沒有..使用app_dev.php(開發模式)或app.php控制器。 (prod模式) – COil

+0

我修改了我的答案。 – COil