-
Notifications
You must be signed in to change notification settings - Fork 0
/
webpack.config.js
34 lines (33 loc) · 1.05 KB
/
webpack.config.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
const path = require('path');
const nodeExternals = require('webpack-node-externals');
module.exports = (env, argv) => ({
entry: path.resolve(__dirname, 'src/app.js'),
output: {
path: path.resolve(__dirname, 'build'),
filename: 'bundle.js',
/* REquired if creating a library */
/* library: "$",
libraryTarget: "umd", */
},
target: 'node', // use require() & use NodeJs CommonJS style
devtool: argv.mode === 'development' ? 'source-map' : undefined,
externals: [nodeExternals()], // in order to ignore all modules in node_modules folder
externalsPresets: {
node: true, // in order to ignore built-in modules like path, fs, etc.
},
node: {
// Need this when working with express, otherwise the build fails
__dirname: false, // if you don't put this is, __dirname
__filename: false, // and __filename return blank or /
},
module: {
rules: [
{
test: /\.(js)$/,
exclude: /(node_modules|\.huskey|build)/,
use: 'babel-loader',
},
],
},
mode: argv.mode || 'production',
});