webpackでentryを複数設定し
module.exports = { mode: "production", entry: { "entry1": "./app/javascript/entry1.js", "entry2": "./app/javascript/entry2.js", }, output: { filename: "[name].js", path: path.resolve(__dirname, "app/assets/builds") }, module: { rules: [ { test: /\.js$/, exclude: /node_modules/, use: { loader: 'babel-loader', options: { presets: [ [ "@babel/preset-env", { "targets": [ "cover 80% in JP" ], "useBuiltIns": "usage", "corejs": { "version": 3, "proposals": false } } ] ] } }, } ], }, optimization: { minimize: true, minimizer: [ new TerserPlugin({ terserOptions: { compress: true }, }), ], } }
こんな感じでbundle を作っています。
entry2を消してentry1のみでbundle作った時のentry1bundleは3MBのサイズがあり
entry: { "entry1": "./app/javascript/entry1.js", "entry2": "./app/javascript/entry1.js", },
こんな感じでentry2をentry1を用いて作成する場合,
同一の内容でサイズが3MBのものが二つできることを期待したのですが
1.9MBの同一の内容のbundleがentry1とentry2で作られます。どうして3MBから減るのでしょうか
あなたの回答
tips
プレビュー