1

私は Symfony2 フレームワークにかなり慣れていませんが、次のドキュメントhttp://symfony.com/doc/current/cookbook/assetic/asset_management.html#dumping-asset-filesを読んだ後、JQuery lib を含める方法をまだよく理解していません。

同様の質問を見たことがありますが、すべてがどのように連携するかを説明しているものはありませんか? そして、なぜアセットをダンプする必要があるのでしょうか? それらをテンプレートに含めるだけでは不十分なのはなぜですか?

基本的に、私がやりたいことは、私の JQuery ライブラリをapp/Resources/js/の下に置くことです 。次に、バンドル内の任意の Twig テンプレートで、この JQuery ライブラリを参照/インクルードして、JQuery スクリプト コードを記述できるようにします。 . app/config/config.ymlファイルを変更する必要がありますか?

あなたの説明と一緒に例を教えてください。以下は、これまでに行ったことです (以下はすべて 1 つの Twig テンプレートにあります)。

{% javascripts 'app/Resources/js/jquery-1.8.0.js' %}
<script type="text/javascript">
$(document).ready(function (){
    $('a').click(function(event){
        $('#box').fadeOut();
    });
}); 
</script>
{% endjavascripts %}

<div id="box">
    <a href="#">click me</a>
</div>

ページは問題なく読み込まれますが、[クリックしてください] をクリックしても JQuery コードが実行されません。

4

1 に答える 1

6

アセットの小枝の実装に何かが欠けています。やったほうがいい:

{% javascripts 'app/Resources/js/jquery-1.8.0.js' %}
<script type="text/javascript" src="{{ asset_url }}"></script>
...

この 2 行目がないと、jquery は実際にはロードされません。

いずれにせよ、assetic の使用はオプションです。慣れない場合は、提供される最適化を必要としないか、慣れるまではより使い慣れたものを使用することを好み、jquery ファイルを「web」フォルダーのどこかに置くだけです (たとえば、 js サブフォルダーの下) を開き、他のアセット ファイルをロードするのと同じようにロードします。

<script src="{{ asset('/js/jquery-1.8.0.js') }}" type="text/javascript"></script>
于 2012-08-19T22:47:53.647 に答える