title: Compiling ES6 and VUE JS not working in IE 11
body: <p>So I am having an issue with ES6, Webpack and VUE JS in IE 11. This works in Edge, Chrome, Safari and Firefox, but not IE 11.</p>
  
  <p>The error:</p>
  
  <pre><code>SCRIPT1002: Syntax error
  vue.js (16,8498)
  </code></pre>
  
  <p>Ok, so whats at this line?</p>
  
  <pre><code>(module,__webpack_exports__,__webpack_require__){"use strict";eval("/* unused harmony export getJSON */\n/* unused harmony export getScrollBarWidth */\n/* unused harmony export translations */\n/* harmony export (immutable) */ __webpack_exports__[\"b\"] = delayer;\n/* unused harmony export VueFixer */\n// coerce convert som types of data into another type\nconst coerce = {\n  // Convert a string to booleam. Otherwise, return the value without modification, so if is not boolean, Vue throw a warning.\n  boolean: val =&gt; (typeof val === 'string' ? val === '' || val === 'true' ? true : (val === 'false' || val === 'null' || val === 'undefined' ? false : val) : val),\n  // Attempt to convert a string value to a Number. Otherwise, return 0.\n  number: (val, alt = null) =&gt; (typeof val === 'number' ? val : val === undefined || val === null || isNaN(Number(val)) ? alt :
  </code></pre>
  
  <p>This goes on for a while ...</p>
  
  <p>I am confused by this mess, as are you I am sure:</p>
  
  <p>This is my Webpack file:</p>
  
  <pre><code>let mix = require('laravel-mix');
  var path = require('path');
  
  /*
   |--------------------------------------------------------------------------
   | Mix Asset Management
   |--------------------------------------------------------------------------
   |
   | Mix provides a clean, fluent API for defining some Webpack build steps
   | for your Laravel application. By default, we are compiling the Sass
   | file for the application as well as bundling up all the JS files.
   |
   */
  
  var npm = '/node_modules/';
  
  var paths = {
    'jquery-ui': npm + 'jquery-ui/',
    'bootstrap': npm + 'bootstrap/',
    'select2': npm + 'select2/dist/',
    'lightbox2': npm + 'lightbox2/dist/',
    'accounting': npm + 'accounting/',
  };
  
  var jQueryUITheme = 'ui-lightness';
  
  mix.less('resources/assets/less/style.less', 'public/css/', {
    modifyVars: {
      'bootstrap': '"' + path.resolve(__dirname) + paths['bootstrap'] + 'less/' + '"'
    }
  }).js('resources/assets/js/boot.js', 'public/js/all.js').webpackConfig({
    resolve: {
      alias: {
        "matches-selector/matches-selector": "desandro-matches-selector",
        "eventEmitter/EventEmitter": "wolfy87-eventemitter",
        "get-style-property/get-style-property": "desandro-get-style-property",
        'masonry': 'masonry-layout',
        'isotope': 'isotope-layout',
        'isotope/js/layout-mode': 'isotope-layout/js/layoutmode',
        'pace': 'pace-progress',
        "jquery-ui/ui/widget": "jquery-ui/widget.js",
      }
    },
  }).js('resources/assets/js/vue/main.js', 'public/js/vue.js')
    .scripts([
      'resources/assets/js/lib/jquery.validate.min.js',
      'resources/assets/js/lib/jquery.bootstrap.wizard.min.js',
      path.resolve(__dirname) + paths['accounting'] + 'accounting.js'
    ], 'public/js/genesis.js')
    .copy(path.resolve(__dirname) + paths['jquery-ui'] + 'themes/' + jQueryUITheme + '/jquery-ui.min.css', 'public/css/lib/jquery-ui/jquery-ui.min.css')
    .copy(path.resolve(__dirname) + paths['jquery-ui'] + 'themes/' + jQueryUITheme + '/theme.css', 'public/css/lib/jquery-ui/theme.css')
    .copy(path.resolve(__dirname) + paths['jquery-ui'] + 'themes/' + jQueryUITheme + '/images', 'public/css/lib/jquery-ui/images')
    .copy(path.resolve(__dirname) + paths['select2'] + 'css/select2.min.css', 'public/css/lib/select2/select2.min.css')
    .copy(path.resolve(__dirname) + paths['lightbox2'] + 'css/lightbox.min.css', 'public/css/lib/lightbox2/css')
    .copy(path.resolve(__dirname) + paths['lightbox2'] + 'images/loading.gif', 'public/css/lib/lightbox2/images')
    .copy(path.resolve(__dirname) + paths['lightbox2'] + 'images/close.png', 'public/css/lib/lightbox2/images')
    .copy(path.resolve(__dirname) + paths['lightbox2'] + 'images/next.png', 'public/css/lib/lightbox2/images')
    .copy(path.resolve(__dirname) + paths['lightbox2'] + 'images/prev.png', 'public/css/lib/lightbox2/images')
    .sourceMaps();
  
   mix.babel(['public/js/main.js'], 'public/js/main.js');
   mix.babel(['public/js/vue.js'], 'public/js/vue.js');
   mix.minify(['public/js/main.js', 'public/js/vue.js', 'public/css/style.css']);
  </code></pre>
  
  <p>I have also installed and done: <a href="https://babeljs.io/docs/en/babel-polyfill/" rel="noreferrer">babel polyfill</a> and done: <code>import "@babel/polyfill";</code> in the <code>boot.js</code> we have.</p>
  
  <p>I am unsure what the error is aside from "syntax". <strong>Is there something I mam missing?</strong></p>