web-dev-qa-db-ja.com

Laravel Elixir:ファイルを縮小する方法は?

Laravel Elixirを使用してcss/filesファイルを縮小したいのですが、mix-methodeを使用してそれらをマージしたくありません。必要なのは「custom.min」を生成することだけです。元の「custom.js」からの.js」ファイル。Elexirでこれを行う方法はありますか?

編集:もう少し明確にするために:私の最大の問題は、「リソース/アセット」にjsとcssの2つのフォルダーがあることです。したがって、基本的に、そこにあるすべてのファイルを縮小して、「public/js」と「public/css」で縮小したいと思います。

11
LuMa

Laravelドキュメント からの引用:

注:すべてのタスクは開発環境を想定しており、縮小化は除外されます。本番環境では、gulp --productionを使用します。

つまり、ファイルを縮小したい場合は、gulpだけでなくgulp --productionを実行してください。 gulpファイルで直接圧縮を有効にするよりも優れた方法であり、アプリケーションの開発中にコンパイル済みファイルをデバッグできることを確認してください。

それらをpublic/assets/cssに配置する場合は、パスを2番目のパラメーターとして使用します。

mix.less('app.less', 'public/assets/css');
22
Kovah

gulp--production。

ジェフリーウェイはここでこの問題について返信しました: https://laracasts.com/discuss/channels/elixir/elixir-doesnt-minify

または、ドキュメントで見つけることができます。コーディングをお楽しみください!

4
Kuya A

LESSまたはSASSを使用せずに.cssファイルをコピーするだけで、ファイルを結合したくない場合(つまり、copy()メソッドのようなミニファイ機能が必要な場合)、次のメソッドを使用できます。 styles()を組み合わせて、すべての.cssファイルに対して呼び出し、配列なしでファイル名文字列を渡します。例:

mix.styles('some.css');
mix.styles('node_modules/bootstrap/dist/css/bootstrap.css', null, './');

scripts()メソッドを使用して、.jsファイルに対して同じことができます。

mix.scripts('some.js');
mix.scripts('node_modules/bootstrap/dist/js/bootstrap.js', null, './');

次に、上記の投稿で説明したように、gulp(縮小せず、.mapファイルを作成)またはgulp --production(縮小ファイルを作成)を使用できます。

1
o.v

Laravel/Elixirのドキュメントから直接:

Elixir is built on top of Gulp, so to run your Elixir tasks you only need to run the gulp command in your terminal. Adding the --production flag to the command will instruct Elixir to minify your CSS and JavaScript files:

Run all tasks... gulp

Run all tasks and minify all CSS and JavaScript... gulp --production

ドキュメント: https://laravel.com/docs/5.3/elixir#running-elixir

0
john