2017-06-16 13 views
1

私はLaravel 5.4を使用しています。webpackを使用して複数の.jsファイルを1つの大きなjsファイルでコンパイルします。Webpackはフォルダ内のすべてのファイルをコンパイルします

const { mix } = require('laravel-mix'); 

// Compile all CSS file from the theme 
mix.styles([ 
    'resources/assets/theme/css/bootstrap.min.css', 
    'resources/assets/theme/css/main.css', 
    'resources/assets/theme/css/plugins.css', 
    'resources/assets/theme/css/themes.css', 
    'resources/assets/theme/css/themes/emerald.css', 
    'resources/assets/theme/css/font-awesome.min.css', 
], 'public/css/theme.css'); 



// Compile all JS file from the theme 
mix.scripts([ 
    'resources/assets/theme/js/bootstrap.min.js', 
    'resources/assets/theme/js/app.js', 
    'resources/assets/theme/js/modernizr.js', 
    'resources/assets/theme/js/plugins.js', 
], 'public/js/theme.js'); 

これは私のそれを行うにはwebpack.mix.js(CSSのと同じ)です。しかし、私はresources/assets/theme/js/*のようなものを取得して、フォルダからすべてのファイルを取得したい。したがって、webpackが自動的に見つけたフォルダに新しいjsファイルを作成し、コマンドを実行するときにコンパイルします。

誰かがこれを知っていますか?

ありがとうございます。

+0

あなたは 'webpack.config.js'全体を共有できますか? –

+0

@m_callens私はそれを変更しました! – Nieck

答えて

1

ワイルドカードは、実際にはmix.scripts()メソッドを使用して許可されています。これは作成者がthis issueで確認したものです。だからあなたの呼び出しは次のようになります。

mix.scripts(
    'resources/assets/theme/js/*.js', 
    'public/js/theme.js'); 

を、彼らはファイルを結合するためにthe same methodを使用するので、私は、それがスタイルのために同じ動作を推測します。

希望すると、これが役立ちます。

+0

私は感謝を知らなかった!そしてそれはスタイルのためにも機能します。 – Nieck

関連する問題