2017-05-26 10 views
1

symfonyプロジェクトでasseticを使用してCSSとJSの縮小を設定しようとしています。私はjavaやnode.jsなどを使用することはできません。そのため、Symfony2 minify without java or nodeでuserlondの指示に従って、私のためにminifyを使用するasseticフィルタを取得していました。 symfonyでasseticのCSSとJSを使用する方法

私は指示に従った、作曲を経由して縮小化をインストールしましたが、私はasseticダンプを行うときは、次を取得しておいてください。私はjsminplusフィルタを使用しようとしますが、ない場合は、まだ使用しています

php.CRITICAL: Fatal Error: Class 'JSMinPlus' not found {"exception":"[object] (Symfony\\Component\\Debug\\Exception\\FatalErrorException(code: 0): Error: Class 'JSMinPlus' not found at /var/www/html/new_test_1/vendor/kriswallsmith/assetic/src/Assetic/Filter/JSMinPlusFilter.php:32)"} 

[Symfony\Component\Debug\Exception\ClassNotFoundException]  
    Attempted to load class "JSMinPlus" from the global namespace. 
    Did you forget a "use" statement? 

minifycsscompressorフィルタ、それはすべてうまくいくようです(私は自分のCSSを縮小しました)。

非互換性を作成した縮小プロジェクトで何か変更されましたか?

私はTWIGテンプレートで使用していたコードは次のとおりです。私はfilter='jsminplus'ラインを取る

{% javascripts 
    '@TemplateBundle/Resources/public/media/site-assets/javascript/vendor/jquery-1.12.1.min.js' 
    '@TemplateBundle/Resources/public/media/site-assets/javascript/vendor/*.js' 
    '@TemplateBundle/Resources/public/media/site-assets/javascript/*.js' 
    filter='jsminplus' 
%} 

    <script src="{{ asset_url }}"></script> 

{% endjavascripts %} 

場合、それはすべて正常に動作します(とだけ縮小されていません)。

答えて

2

あなたがこれに基づいている答えは時代遅れであり、それ以来変化していません。 あなたは、具体的symfonyの古いバージョンを使用していない限り、だから、その後

# app/config/config.yml 
assetic: 
    filters: 
     jsqueeze: ~ 
     # ... 

の線に沿って何か

{% javascripts filter="?jsqueeze" output="js/app.js" 
    "@TemplateBundle/Resources/public/media/site-assets/javascript/*.js" 
    "@TemplateBundle/Resources/public/media/site-assets/javascript/vendor/*.js" 
    "@TemplateBundle/Resources/public/media/site-assets/javascript/*.js" 
%} 
    <script src="{{ asset_url }}"></script> 
{% endjavascripts %} 

があることは注意してください必要があるでしょうか? ?jsqueezeの場合は、この環境でのみ縮小されます。

documentation for a non javascript minifying solutionを参照してください。

+0

ありがとうございます。 – MicWit

関連する問題