1

私は Symfony 2 を学習しており、現在 Assetic を使用して CSS と Javascript ファイルを次のように管理しています。

{% stylesheets '@testMainBundle/Resources/public/css/*' filter='cssrewrite' %}
    <link rel="stylesheet" href="{{ asset_url }}" type="text/css" />
{% endstylesheets %}

{% javascripts '@testMainBundle/Resources/public/js/*' %}
    <script type="text/javascript" src="{{ asset_url }}"></script>
{% endjavascripts %}

には、と の@testMainBundle/Resources/public/js3 つのファイルがあります。ただし、Web ページのソース コードは次のようになります。bootstrap.min.jsjquery-1.10.2.min.jsmain.js

<script type="text/javascript" src="/app_dev.php/js/4a0d3cd_part_1_bootstrap.min_1.js"></script>

明らかに、Assetic はそのディレクトリから 1 つのファイル (bootstrap ファイル) のみを提供しています。確認したところ、ファイルを結合しておらず、出力されているのはファイルのみです。bootstrap.min.js

ただし、Assetic は 2 つの CSS ファイルで問題なく動作します。ブラウザのキャッシュを更新してみましたが、何も変わりません。

また、副次的な質問として、Assetic がjquery-1.10.2.min.js前に出力することを確認するにはどうすればよいbootstrap.min.jsですか? Bootstrap は jQuery に依存しているため、最初に印刷することはできません。

4

1 に答える 1

1

私自身の解決策を見つけたので、次のことをしなければなりませんでした:

{% javascripts
    '@testMainBundle/Resources/public/js/jquery-1.10.2.min.js'
    '@testMainBundle/Resources/public/js/*' %}
    <script type="text/javascript" src="{{ asset_url }}"></script>
{% endjavascripts %}

Assetic がこのように動作するように文書化されているかどうかはわかりませんが、最初に jQuery インクルードを出力し、次に他のすべてのファイルを出力するようです。完全!

于 2013-10-20T15:54:11.627 に答える