diff options
Diffstat (limited to 'webpack.config.js')
-rw-r--r-- | webpack.config.js | 106 |
1 files changed, 54 insertions, 52 deletions
diff --git a/webpack.config.js b/webpack.config.js index 39cb3a5..49261a0 100644 --- a/webpack.config.js +++ b/webpack.config.js @@ -1,55 +1,57 @@ const path = require("path"); const HtmlWebpackPlugin = require("html-webpack-plugin"); const CopyWebpackPlugin = require('copy-webpack-plugin'); - -module.exports = (env, argv) => ({ - entry: { - index: "./src/index.js", - background: "./src/background.js", - popup: "./src/popup.js" - }, - output: { - path: path.join(__dirname, "/dist"), - filename: "[name].js" - }, - module: { - rules: [ - { - test: /\.js$/, - exclude: /node_modules/, - use: ['babel-loader', 'eslint-loader'] - }, - { - test: /\.css$/, - use: ["style-loader", "css-loader"] - }, - { test: /\.(png|woff|woff2|eot|ttf|svg)$/, loader: 'url-loader?limit=100000' } - ] - }, - plugins: [ - new HtmlWebpackPlugin({ - chunks: ['index'], - template: "./src/index.html", - filename: "./index.html" - }), - new HtmlWebpackPlugin({ - chunks: ['popup'], - template: "./src/index.html", - filename: "./popup.html" - }), - new CopyWebpackPlugin([ - {from:'./public/', to:'./'} - ]), - new CopyWebpackPlugin([ - { - from: argv.mode == 'production' ? './manifest.prod.json' : './manifest.dev.json', - to: './manifest.json' - } - ]), - ], - optimization: { - splitChunks: { - chunks: 'all' - } - } -}); +module.exports = (env, argv) => { + const prodMode = argv.mode == 'production'; + return { + entry: { + index: "./src/index.js", + background: "./src/background.js", + popup: "./src/popup.js" + }, + output: { + path: path.join(__dirname, "/dist"), + filename: "[name].js" + }, + module: { + rules: [ + { + test: /\.js$/, + exclude: /node_modules/, + use: ['babel-loader', 'eslint-loader'] + }, + { + test: /\.css$/, + use: ["style-loader", "css-loader"] + }, + { test: /\.(png|woff|woff2|eot|ttf|svg)$/, loader: 'url-loader?limit=100000' } + ] + }, + plugins: [ + new HtmlWebpackPlugin({ + chunks: ['index'], + template: "./src/index.html", + filename: "./index.html" + }), + new HtmlWebpackPlugin({ + chunks: ['popup'], + template: "./src/index.html", + filename: "./popup.html" + }), + new CopyWebpackPlugin([ + {from:'./public/', to:'./'} + ]), + new CopyWebpackPlugin([ + { + from: prodMode ? './manifest.prod.json' : './manifest.dev.json', + to: './manifest.json' + } + ]), + ], + //optimization: prodMode ? ({ + // splitChunks: { + // chunks: 'all' + // } + //}) : {} + }; +}; |