Webpack babel config para servidor e cliente javascript?
Estou tentando descobrir como ter um único arquivo de configuração do webpack que funcione para transformar o servidor (node.js) js e o cliente js com a predefinição es2015. Atualmente, tenho que definir especificamente "target: 'node'" para processar corretamente os arquivos baseados em nó. Caso contrário, o webpack fará a transformação com base no "target: 'web'" padrão. Ele então relata erros porque o módulo 'mysql' sendo importado claramente não funcionará para a web.
Como posso unificar os dois no mesmo arquivo de configuração para que o servidor e o cliente js sejam transformados separadamente? Ou preciso inteiramente de configurações separadas?
Exemplo de webpack.config.js
'use strict';
var path = require('path');
var webpack = require('webpack');
module.exports = {
target: 'node',
resolve: {
root: path.resolve(__dirname),
extensions: ['', '.js']
},
entry: [
'babel-polyfill',
'./index.js',
],
output: {
filename: 'bundle.js'
},
module: {
loaders: [
{
test: /\.js$/,
exclude: /node_modules/,
loader: 'babel',
query: {
presets: ['es2015']
}
}
]
}
};
Código js de amostra
import 'babel-polyfill';
import mysql from 'mysql';
class Test {
constructor () {
}
get read () {
}
};