0

laravel-mix(webpackを含む)を使用してJSファイルをバンドルします。 BundleAnalyzerPluginの使用私は、出力ファイルに、出力ファイルのサイズを大きくするJQueryのlibの複数のコピーが含まれていることがわかりました。同じモジュールの重複を避ける方法Webpackバンドル?

いくつかのモジュールにJQueryが含まれています。

これを避け、すべての冗長なjqueryインクルージョンを削除する方法はありますか?

(詳細で更新)

Image of Bundle analyzer output

webpack.mix.js

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

const BundleAnalyzerPlugin = require('webpack-bundle-analyzer').BundleAnalyzerPlugin; 

mix.js('resources/assets/js/admin.js', 'public/js') 

mix.webpackConfig({ 
    plugins: [ 
     new BundleAnalyzerPlugin(), 
     new webpack.ProvidePlugin({ // Added as a suggestion. Makes no difference 
      '$': 'jquery', 
      'jQuery': 'jquery', 
      'window.jQuery': 'jquery' 
     }) 
    ], 
}); 

admin.js

import 'jquery' 
import 'toastr' 
+0

を私たちは、私は質問を更新しましたあなたの 'webpack.mix.js'設定ファイル –

+0

@RuChernChongが必要詳細(webpack.mix.jsのコピーを含む) –

答えて

0

あなたのエントリファイルでと参照してくださいあなたのwebpack.configに

plugins: [ 
    new webpack.ProvidePlugin({ 
     '$': 'jquery', 
     'jQuery': 'jquery', 
     'window.jQuery': 'jquery' 
    }) 
] 

を以下のブロックを追加:Webpack Provide Plugin

+0

ありがとう、試してみました。しかし助けなかった。私はより多くの情報で質問を更新しました。 –

+0

jQuery用のwebpack外観の使用はどうですか? – Gowrav

+0

どのように行うには? –

関連する問題