Webpack Babel Config für Server und Client Javascript?

Ich versuche herauszufinden, wie eine einzige Webpack-Konfigurationsdatei erstellt werden kann, mit der Server- (node.js) und Client-Js mit der Voreinstellung es2015 transformiert werden können. Derzeit muss ich "target: 'node'" speziell festlegen, damit knotenbasierte Dateien korrekt verarbeitet werden. Wenn nicht, führt webpack die Transformation basierend auf dem Standardziel "Ziel: 'web'" durch. Anschließend werden Fehler gemeldet, da das importierte 'mysql'-Modul für das Web eindeutig nicht funktioniert.

Wie kann ich beide in derselben Konfigurationsdatei zusammenfassen, sodass Server- und Client-Js separat transformiert werden? Oder brauche ich separate Configs ganz?

Beispiel 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']
        }
      }
    ]
  }
};

Sample js code

import 'babel-polyfill';
import mysql from 'mysql';

class Test {
  constructor () {

  }

  get read () {

  }
};

Antworten auf die Frage(2)

Ihre Antwort auf die Frage